如何使用Python自动爬取图片并保存
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下如何使用Python自动爬取图片并保存,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、准备工作用pyt
千家信息网最后更新 2026年11月03日如何使用Python自动爬取图片并保存
小编给大家分享一下如何使用Python自动爬取图片并保存,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
一、准备工作
用python来实现对百度图片的爬取并保存,以情绪图片为例,百度搜索可得到下图所示

f12打开源码

在此处可以看到这次我们要爬取的图片的基本信息是在img - scr中
二、代码实现
这次的爬取主要用了如下的第三方库
import reimport timeimport requestsfrom bs4 import BeautifulSoupimport os
简单构思可以分为三个小部分
1.获取网页内容
2.解析网页
3.保存图片至相应位置
下面来看第一部分:获取网页内容
baseurl = 'https://cn.bing.com/images/search?q=%E6%83%85%E7%BB%AA%E5%9B%BE%E7%89%87&qpvt=%e6%83%85%e7%bb%aa%e5%9b%be%e7%89%87&form=IGRE&first=1&cw=418&ch=652&tsc=ImageBasicHover'head = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"} response = requests.get(baseurl, headers=head) # 获取网页信息 html = response.text # 将网页信息转化为text形式是不是so easy
第二部分解析网页才是大头
来看代码
Img = re.compile(r'img.*src="(.*?)"') # 正则表达式匹配图片soup = BeautifulSoup(html, "html.parser") # BeautifulSoup解析html #i = 0 # 计数器初始值 data = [] # 存储图片超链接的列表 for item in soup.find_all('img', src=""): # soup.find_all对网页中的img-src进行迭代 item = str(item) # 转换为str类型 Picture = re.findall(Img, item) # 结合re正则表达式和BeautifulSoup, 仅返回超链接 for b in Picture: data.append(b) #i = i + 1 return data[-1] # print(i)这里就运用到了BeautifulSoup以及re正则表达式的相关知识,需要有一定的基础哦
下面就是第三部分:保存图片
for m in getdata( baseurl='https://cn.bing.com/images/search?q=%E6%83%85%E7%BB%AA%E5%9B%BE%E7%89%87&qpvt=%e6%83%85%e7%bb%aa%e5%9b%be%e7%89%87&form=IGRE&first=1&cw=418&ch=652&tsc=ImageBasicHover'): resp = requests.get(m) #获取网页信息 byte = resp.content # 转化为content二进制 print(os.getcwd()) # os库中输出当前的路径 i = i + 1 # 递增 # img_path = os.path.join(m) with open("path{}.jpg".format(i), "wb") as f: # 文件写入 f.write(byte) time.sleep(0.5) # 每隔0.5秒下载一张图片放入D://情绪图片测试 print("第{}张图片爬取成功!".format(i))各行代码的解释已经给大家写在注释中啦,不明白的地方可以直接私信或评论哦~
下面是完整的代码
import reimport timeimport requestsfrom bs4 import BeautifulSoupimport os # m = 'https://tse2-mm.cn.bing.net/th/id/OIP-C.uihwmxDdgfK4FlCIXx-3jgHaPc?w=115&h=183&c=7&r=0&o=5&pid=1.7''''resp = requests.get(m)byte = resp.contentprint(os.getcwd())img_path = os.path.join(m)'''def main(): baseurl = 'https://cn.bing.com/images/search?q=%E6%83%85%E7%BB%AA%E5%9B%BE%E7%89%87&qpvt=%e6%83%85%e7%bb%aa%e5%9b%be%e7%89%87&form=IGRE&first=1&cw=418&ch=652&tsc=ImageBasicHover' datalist = getdata(baseurl) def getdata(baseurl): Img = re.compile(r'img.*src="(.*?)"') # 正则表达式匹配图片 datalist = [] head = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"} response = requests.get(baseurl, headers=head) # 获取网页信息 html = response.text # 将网页信息转化为text形式 soup = BeautifulSoup(html, "html.parser") # BeautifulSoup解析html # i = 0 # 计数器初始值 data = [] # 存储图片超链接的列表 for item in soup.find_all('img', src=""): # soup.find_all对网页中的img-src进行迭代 item = str(item) # 转换为str类型 Picture = re.findall(Img, item) # 结合re正则表达式和BeautifulSoup, 仅返回超链接 for b in Picture: # 遍历列表,取最后一次结果 data.append(b) # i = i + 1 datalist.append(data[-1]) return datalist # 返回一个包含超链接的新列表 # print(i) '''with open("img_path.jpg","wb") as f: f.write(byte)''' if __name__ == '__main__': os.chdir("D://情绪图片测试") main() i = 0 # 图片名递增 for m in getdata( baseurl='https://cn.bing.com/images/search?q=%E6%83%85%E7%BB%AA%E5%9B%BE%E7%89%87&qpvt=%e6%83%85%e7%bb%aa%e5%9b%be%e7%89%87&form=IGRE&first=1&cw=418&ch=652&tsc=ImageBasicHover'): resp = requests.get(m) #获取网页信息 byte = resp.content # 转化为content二进制 print(os.getcwd()) # os库中输出当前的路径 i = i + 1 # 递增 # img_path = os.path.join(m) with open("path{}.jpg".format(i), "wb") as f: # 文件写入 f.write(byte) time.sleep(0.5) # 每隔0.5秒下载一张图片放入D://情绪图片测试 print("第{}张图片爬取成功!".format(i))最后的运行截图
以上是"如何使用Python自动爬取图片并保存"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
图片
网页
信息
正则
表达式
链接
代码
内容
情绪
篇文章
测试
成功
二进制
形式
文件
知识
类型
计数器
路径
部分
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳九邦互联网科技有限公司
互联网络科技有限公司
易互联网科技有限公司
贷财互联网科技
百单互联网科技有限公司
天津摩尔互联网科技
猫创互联网科技
互联网科技网站
一五八零互联网科技
卓越科技互联网 招聘
互联网公司会议桌创意科技软装饰
老年人脱离互联网科技的作文
团飞科技与伯堂互联网服务平台
茂名市互联网科技产业园
互联网科技创新的路径
爱医互联网络科技
用友工业互联网科技发展
张召忠谈中国互联网科技
互联网科技收购价值
科技发展第三阶段互联网时代
广东猪兼强互联网科技有限公司
互联网科技工作委员会毛军
互联网下的科技发展
互联网络科技有限公司
上游互联网科技
华服互联网科技官网
互联网新科技动漫ppt素材
四川慕妮娅互联网科技有限公司
互联网金融科技名词解释
互联网营销推广黑科技