话不多说,先上效果图:
效果图
爬虫环境: Python 3.7
工具: Pycharm
# 1、数据的位置 通过网址定位起始网站的地址
# 2、数据的定位 通过浏览器右键 检查定位图片位置
# 3、数据的匹配 根据图片位置的标签定位数据在标签内的src内容
# 4、数据的下载 保存本地
import requests # 第三方库 需要单独安装使用 pip install requests 发起网络请求
from lxmlimport etree# 数据的解析
# 目标网址 自己寻找指定网址
url ='https://www.huya.com/g/xxx'
# 伪装头 防止418 或者防爬
# 418是一个很有意思的梗,大家可以自己找找看哦!
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 Edg/83.0.478.61'
}
# 发起网络请求,并获取数据
response = requests.get(url=url, headers=headers)
# print(response.text) 打印前端的源代码 可以预览看看我们抓取到的数据
# 数据解析
data = etree.HTML(response.text)
girls = data.xpath('//img[@class="pic"]')# 一组照片的标签
# 遍历数据
for girlin girls:
img_url = girl.xpath('./@data-original')[0]# 缩小的图片
# print(img_url)
img_url = img_url.split("?")[0]# 原图链接
# print(img_url)
name = girl.xpath('./@alt')[0]# 主播名字
image = requests.get(url=img_url, headers=headers)# 图片数据
with open('./Girl/%s.jpg' % name, 'wb')as jpg:
jpg.write(image.content)
print('《%s》下载完毕' % name)
关注点一点......源码不间断......