python爬取斗鱼主播图片_F_hawk189_新浪博客

      今天闲来无事,爬取一下斗鱼女主播的图片,之前学习scrapy的时候写过一个找不到了,今天使用requests和bs4重新写了一份,闲话不多说,直奔主题。

首先用Chrome浏览器访问斗鱼官网:
当然是选择颜值辣:
python爬取斗鱼主播图片

然后鼠标放在第一张图片上,检查元素:
发现图片的url在这里:
python爬取斗鱼主播图片
我们会发现data-original和src内容是一样的,那就选择哪个就可以喽,我们打开这个url试一下:
python爬取斗鱼主播图片

OK,就是这个了,然后对这个标签在的位置进行分析,发现:
python爬取斗鱼主播图片
所有图片都在这个div标签下,那就好办了,开始写代码:
首先:
import requests
from bs4 import BeautifulSoup

headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/62.0.3202.89 Safari/537.36'
}
导入requests和bs4库,顺带带上了headers。

然后是进行筛选,获取到所有图片的url
def get_img_url():
url = 'https://www.douyu.com/directory/game/yz'
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
girl_list = soup.select('div[class="items items01 item-data clearfix"]')
for girl in girl_list:
li_list = girl.select('li')
for li in li_list:
yield li.img['data-original']
复制过来为啥缩进都没有了,好奇怪,各位可以自行缩进,逻辑不难,应该都能看懂。

最后是主函数,对图片进行保存:
if __name__ == '__main__':
img_url = get_img_url()
for num, img in enumerate(img_url):
img_response = requests.get(img)
# response = requests.get('https://rpic.douyucdn.cn/live-cover/appCovers/2017/12/05/1977639_20171205204858_big.jpg')
Image = img_response.content
Image_path = './pictures/%s.png' % num
fp = open(Image_path, 'wb')
fp.write(Image)
fp.close()
还是没有缩进,for以下的内容都是for循环内的。。。

到此,大功告成,成果如下:
python爬取斗鱼主播图片


还有一个问题没实现,就是当前页只有这么多主播照片,第二页还有呢,各位可以自行加上翻页,这样就可以将所有颜值的主播照片都怕去了下来
。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值