/1 前言/html
平时咱们要下载图片,要要一个一个点击下载是否是以为很麻烦?那有没有更加简便的方法呢?答案是确定的,这里咱们以天堂网为例,批量下载天堂网的图片。python
/2 项目准备工做/浏览器
首先 咱们第一步咱们要安装一个pycham的软件。能够参考这篇文章:Python环境搭建—安利Python小白的Python和Pycharm安装详细教程。网络
天堂网的网址:框架
https://www.ivsky.com/bizhi/1920x1080/复制代码
咱们须要下载几个库,怎么下载呢?打开pycharm,依次点击File,再点开Settings,以下图所示。学习
打开后会出现这个界面点击你的项目名字(project:(你的项目名字)),以后在project interpreter下,点击加号,然后下载咱们须要的库,以下图所示。网站
本项目须要用到的是库是requests、lxml、fake_useragent,以下图所示。fake_useragent通常是没有的,须要经过下面的命令进行安装:url
pip install fake_useragent复制代码
/3 项目实现/spa
一、导入须要的库(requests,lxml, fake_useragent)。code
二、我用了封装方法去实现各个部分的功能。首先要写一个框架:构造一个类TianTangWebsite ,而后定义一个init方法里继承(self),再定义一个主方法(main)。最后实现这个main方法,依次一步一步进行实现。
三、咱们把天堂网的网址拿过来,构造请求头。这里说一下这个UserAgent的获取方法。在打开天堂网的网站后,按下键盘上的F12键,以后会进入到开发者模式,以后点开network,以下图所示。
四、然后随便点击一个name,复制header里边的UserAgent就能够了。
五、咱们点击下一页的地址观察网址的变化,以下所示:
https://www.ivsky.com/bizhi/1920x1080/index_2.html
https://www.ivsky.com/bizhi/1920x1080/index_3.html
https://www.ivsky.com/bizhi/1920x1080/index_4.html复制代码
很明显的发现,这个网址的网页数字一直在变化。咱们能够用格式化{}去代替变化的值,相似这样:
https://www.ivsky.com/bizhi/1920x1080/index_{}.html复制代码
六、而后咱们用for循环去遍历这些网址,代码以下所示:
def main(self):
for i in range(1,2):#页数随机客户随便 设置
url=self.url.format(i)
print(url)复制代码
七、咱们定义这个get_home()方法去请求到这个网址。
九、咱们须要解析获得的数据,接下来定义一个xiap的方法,拿到咱们请求的网址。接下来就是该项目的关键了。
十、至此,针对反爬虫的措施咱们已经提早作好了准备,下一步将进行网页结构的分析以及网页图片地址数据的提取,并针对解析出来的图片地址予以批量下载,具体实现我们下篇文章进行详解。
/4 小结/
本文主要内容为对图片网站进行了基本简介,基于 Python 中的爬虫库 requests 、lxml、fake_useragent,提早部署了请求头,模拟浏览器,针对反爬虫的措施咱们已经提早作好了准备。
下篇文章将带你们进行网页结构的分析以及网页图片地址数据的提取,并针对解析出来的图片地址予以批量下载,敬请期待~~
往期精彩文章推荐:
想学习更多Python网络爬虫与数据挖掘知识,可前往专业网站:pdcfighting.com/