上一讲我们讲到了从昵图网的首页下载图片到本地,但是我们发现首页上面的大部分链接其实都可以进入到二级页面。

在二级页面里面,我们也可以同样进行图片的下载,通过层层循环我们可以把网址的一部分图片下载到本地(有些图片的链接是动态的,而且网站也会检测盗链等反爬虫设置,这个后续再讲)。

首先,我们整理下思路,在首页这里爬取图片的思路如下:

1、通过首页的地址获取首页的源代码

2、分析源代码中图片的链接地址,根据这个地址格式来组装正则表达式

3、根据正则表达式来批量匹配图片地址

4、根据匹配的地址进行循环下载到本地。

借鉴上面的思路,我们在二级页面同样可以使用这些步骤,只需要把首页的地址更换成二级页面的地址。

那么,二级页面的地址我们在首页的源码分析的时候可以直接获取,存在另外一个列表(现在为止有两个列表了,一个是用来存储页面的二级链接的,一个是用来存储本页面的图片地址的)。

由于我们爬取图片的功能都是可以反复调用的,所以我们把这部分的代码提取成一个函数。

最终代码如下:

第十讲:Python爬取网页图片并保存到本地,包含次层页面-LMLPHP

运行效果如下:

第十讲:Python爬取网页图片并保存到本地,包含次层页面-LMLPHP

第十讲:Python爬取网页图片并保存到本地,包含次层页面-LMLPHP

图片会一直下载。

07-16 21:23