Python爬虫实战之爬取网站全部图片(二)

通过python 来爬取网站内所有的图片到本地  

第三篇是动态获取参数构造图片地址实现下载图片  传送门:https://blog.csdn.net/qq_33958297/article/details/82316019

 

这篇文章的目的是因为上一个文章里的地址已经无法访问了

考虑到可能有的新手没有办法去实验,这里又出了一个新的。

但是和那个网站的实现方式略微不同。

前面大致是一样的只是后面整套图片获取的时候 需要一些步骤。

 

爬取地址没了:官方又说这个是色情了。还是同样的下面是详细教程了

 

一.获得图片地址 和 图片名称

 

1.进入网址之后

按F12  打开开发人员工具点击elemnts

https://img-blog.csdn.net/20180902122050752?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMzOTU4Mjk3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

 

 2.获得图片地址

点击下图的小箭头 选择主图中的任意一个图片   那我们这里点击第一个 图片

 

 3.显示控制台

为了验证xpath是否正确

https://img-blog.csdn.net/20180902122050642?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMzOTU4Mjk3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

 

    4.验证xpath是否正确

通过xpath获得a的href  和 title. (我看到好几个在问如何通过xpath获得a的href和title 把下面的图点开 不光有xpath语句,还有结果 )

(请放大看)我们看到 他提示的是有24个 我们回到网站中看一下  在主页上数一下 他有32个 

是因为里面有几个图片位是插入的广告  广告没有href 和data-origianl这两个属性

 

  5.获取请求头

 

6.获得每套图里的所有图片.

但是我们进来之后发现 他只有一张图,需要点击下一页来获取剩下的图片。

思路是:  首先获取图片的地址,同时获取最大的页码,我们通过循环自己来构造他的图片地址

1)第一张图

2)第二张图

3) 最后一张图

 

结论:只要在16a后面一直加1就可以

 

7.获取图片地址和页码

上面是页码  下面是图片地址 

 

8.获得请求每个图片的请求头  

注意Referer字段  这地址显示图片得那个网址  

这个字段主要用于防盗链 如果直接请求的话 会返回一些错误的东西 或者错误等问题

 

9.对于404的处理 如果出现了404那就只有重新请求了

 

 

二.编写python代码实现爬取.

    1.需要用到的库有: 

      Requests   lxml    如果没有安装的请自己安装一下

    2.IDE : vscode

    3.python 版本: 2.7.15

    4.代码实现的是多线程下载,多线程的好处 就不用我多说了。

下载地址:https://download.csdn.net/download/qq_33958297/12195870

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页