纵有疾风起
人生不言弃

python入门012~使用python3爬取网络图片并保存到本地

上一节我们学习了python3借助requests类库爬取网页数据,这一节我们继续深入的讲解python爬虫的实现。今天要将的是使用python3爬取网络图片,并保存到本地。

本节知识点
1,python3爬取网站源码
2,正则匹配获取图片链接
3,使用python3将不怕保存到本地

一,首先我们来看下要爬取的网址

下图箭头所指的就是我们要爬取的图片。

python入门012~使用python3爬取网络图片并保存到本地插图

二,爬取网址源码到本地

python入门012~使用python3爬取网络图片并保存到本地插图1

通过上图我们可以看到,我们成功的爬取到了网站源码,而这个网站的 <img 图片显示标签里用了 data-src 懒加载来显示图片,所以我们接下来要做的就是使用正则表达式来匹配出网站源码里的图片链接。

三,正则表达式匹配图片链接

python入门012~使用python3爬取网络图片并保存到本地插图2

通过上图可以看出,我们成功的匹配到了网站源码里的图片链接,接下来,我们就要把这个图片保存在本地了。

四,保存图片到本地

python入门012~使用python3爬取网络图片并保存到本地插图3

如上图,我们做保存图片的时候,需要先在我们代码的外层目录创建一个 imgs文件夹,用于存放图片。然后编写核心代码。

五,完整代码如下。

python入门012~使用python3爬取网络图片并保存到本地插图4

六,运行代码,看下效果

python入门012~使用python3爬取网络图片并保存到本地插图5

可以看下我们爬取到的图片

python入门012~使用python3爬取网络图片并保存到本地插图6

最后把完整代码贴给大家

# python3爬取网络图片import requestsimport re# 第一个爬取网址url = 'http://www.nipic.com/photo/jingguan/ziran/index.html'# 获得网页源码data = requests.get(url).text# print("网站源码", data)# 图片正则表达式regex = r'data-src="(.*?.jpg)"'# re是一个列表pa = re.compile(regex)  # 创建一个pa模板,使其符合匹配的网址ma = re.findall(pa, data)  # findall 方法找到data中所有的符合pa的对象,添加到re中并返回# print(ma)# 将ma中图片网址依次提取出来i = 0for image in ma:    i += 1    image = requests.get(image).content    print(str(i) + '.jpg 正在保存。。。')    with open('../imgs/' + str(i) + '.jpg', 'wb') as f:  # 注意打开的是就jpg文件        f.write(image)print('保存完毕')

往期文章

视频教程

点击这个地址可以试看:https://www.bilibili.com/video/av55521385/
如果觉得视频教程不错,可以加老师微信购买 ,老师微信 2501902696

文章转载于:https://www.jianshu.com/p/651effd4f3b8

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » python入门012~使用python3爬取网络图片并保存到本地
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录