python批量爬取网页图片(requests,xpath)
闲来无事学习了python爬虫,xpath真是一个简单好用的工具,给我的LSP室友找一些符合他口味的图片。现在开始爬虫,所需工具:一台能上网并且可以运行python的电脑,python IDE(推荐pycharm或者anaconda),anaconda中集成了大量的python第三方库,对于我这种新手还是比较友好的),需要用到的第三方库:requests,lxml,os,time。
**
第一步:请求网页
**
首先使用requests库中的get函数访问自己想要爬取数据的网页,得到网页数html数据。通常要加上请求头。
进入网页之后,检查网页源代码,在notework下header获取请求头
代码如下:
url = "https://www.99tu.com/mz/siwameitui/29_5.html"
header = {
"User-Agent":'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36'}
repounse = requests.get(url,headers=header)
content = repounse.content.decode('utf-8')
**
第二步:利用xpath获取图片地址和名称
**
什么是XPath?
XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。
W3School官方文档:http://www.w3school.com.cn/xpath/index.asp
XPath 开发工具
开源的XPath表达式编辑工具:XMLQuire(XML格式文件可用) Chrome插件 XPath Helper Firefox插件
XPath Checker
选取节点
XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。 这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。
路径表达式:
具体操作:在浏览器中打开开发者模式,使用插件Chrome插件 XPath Helper,找到图片的src地址和alt名称。xpath helper是以一个非常好用的开发者工具,可以在网页上找到你想要的信息,无需在程序中验证。
找到图片的src和alt之后,使用for循环遍历每一张图片的链接和名称。
代码如下: