Python爬虫实战:使用requests和BeautifulSoup库下载高清图片

想要学习如何使用Python从网站上下载高清图片吗?这篇文章将为你提供一个简单易懂的指南,教你使用 requestsBeautifulSoup 库轻松实现图片爬取。

**代码示例:**pythonimport requestsfrom bs4 import BeautifulSoupimport os

def download(url): res = requests.get(url) img = res.content filename = 'img/' + url.split('/')[-1] with open(filename , 'wb') as f: f.write(img)

def get_html(): url = 'http://www.netbian.com/index_519.htm' headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'} res = requests.get(url ,headers = headers) res.encoding = 'gbk' if res.status_code == 200: html = res.text soup = BeautifulSoup(html,'lxml') all_list = soup.find(class_ = 'list') all_img = all_list.find_all('img') if not os.path.exists('img'): os.makedirs('img') for img in all_img: src = img['src'] download(src)

if name == 'main': get_html()

代码解析:

  1. 导入必要的库: - requests: 用于发送HTTP请求获取网页内容。 - BeautifulSoup: 用于解析HTML结构,提取所需信息。 - os: 用于进行文件系统操作,例如创建文件夹。

  2. download 函数: - 接收图片URL作为参数。 - 使用 requests.get() 发送GET请求获取图片内容。 - 从URL中提取文件名,并拼接成完整的文件路径。 - 以二进制写入模式 ('wb') 打开文件,并将图片内容写入文件。

  3. get_html 函数: - 定义目标网页的URL。 - 设置请求头部信息,模拟浏览器行为,避免被网站识别为爬虫。 - 发送GET请求获取网页内容,并将编码设置为 'gbk'。 - 检查请求是否成功 (状态码为200)。 - 使用 BeautifulSoup 解析HTML内容。 - 使用 find()find_all() 方法定位包含图片的元素和所有图片标签。 - 检查 img 文件夹是否存在,如果不存在则创建。 - 遍历所有图片标签,提取图片URL,并调用 download 函数下载图片。

  4. 程序入口: - if __name__ == '__main__': 确保代码只在作为主程序运行时执行。 - 调用 get_html() 函数开始执行爬取操作。

总结:

这段代码演示了如何使用Python的 requestsBeautifulSoup 库从网站上下载图片。通过学习这段代码,你可以了解到基本的网页爬取流程,以及如何处理HTML结构和文件操作。

Python爬虫实战:使用requests和BeautifulSoup库下载高清图片

原文地址: https://www.cveoy.top/t/topic/fRmV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录