Python爬彼岸高清壁纸,并下载到本地
-
- 1. 目标
- 2. 项目准备
- 3. 网站分析
- 4. 反爬分析
- 5. 基础代码实现
- 6. 多页抓取分析
- 7. 多页抓取处理
- 8. 批量下载到本地
- 9. 效果显示
- 10. 完整代码
1. 目标
爬取彼岸壁纸,批量下载图片,并保存到本地。
2. 项目准备
软件:Pycharm
第三方库:requests,fake_useragent,lxml
网站地址:http://www.netbian.com/meinv/
3. 网站分析
打开网站看一下。
F12检查,审查元素。
可以获取到该图片的URL地址,尝试打开看一下。
可以看到这是一张分辨率很低的图片,并不是我们要图片。
因此我们只有先进入内页进行抓取图片。
先获取红色框地址链接,进入内页。
高清图片再也藏不住了。
继续审查元素
可以找到高清图片地址。以上只是获取一个,若是获取全部只要在首页中拿到全部小图地址链接进入内页解析即可全部获取,不再赘述。至于多页爬取,请继续浏览。
分析完毕,接下来代码操作。
4. 反爬分析
同一个ip地址去多次访问会面临被封掉的风险,这里采用fake_useragent,产生随机的User-Agent请求头进行访问。
5. 基础代码实现
import requests
from fake_useragent import UserAgent
from lxml import etree
class BiAn():
def __init__(self):
self.url = 'http://www.netbian.com/meinv/'
ua = UserAgent()
for i in range(1, 100):
self.headers = {
'User-Agent': ua.random
}
def main(self):
pass
if __name__ == '__main__':
spider = BiAn()
spider.main()
发送请求,获取网页。
def get_html(self, url):
response = requests.get(url, headers=self