python爬斗鱼直播房间名和主播名_斗鱼爬虫,爬取颜值频道的主播图片和名字
在斗鱼的界面中,如果滚动条没有拉下去,那么下面的图片都只是一条鱼的图片,所以要使浏览器自动拉动滚动条,可以用到python的selenium库,
1、配置浏览器
要使用selenium,还需要安装 chromedriver.exe,这里是使用Chrome浏览器,首先在https://npm.taobao.org/mirrors/chromedriver下这个网址中下载适合自己浏览器版本的chromedriver.exe,然后安装在Chrome浏览器的根目录下
2使用selenium库,获取斗鱼直播的整个页面
自动打开Chrome浏览器,然后进入斗鱼直播网页并使页面最大化,再实现自动拉动滚轮的方法来获取整个直播页面
在浏览器按F12进入检查模式,可以看到所有的主播页面都在class="layout-Cover-list"的ul标签下的li标签中,
所以可以这样来获取数据
3、获取图片链接和主播名字
找到图片所在的位置,在每个class ="DyImg-content is-normal " 的src标签中
名字在每个class =class="DyListCover-user" d的h2中
4、将得到的图片和名字保存到本地
因为得到的图片链接可能有些不必要的必要,所以用正则表达式,只匹配到有用的地方,再保存下来,
5、完整代码
import re
import requests
from selenium import webdriver
import time
# 1. 准备url
url = 'https://www.douyu.com/g_yz'
# 2. 获取element对象,Chrome后面是chromedriver.exe安装的根目录
driver = webdriver.Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get(url)
time.sleep(1)
# 3.加载页面
# 页面最大化
driver.maximize_window()
# 拉动滚动条
for i in range(16):
time.sleep(1)
driver.execute_script("window.scrollBy(0, 500)")
# 4. 获取数据
lis = driver.find_elements_by_xpath('//ul[@class="layout-Cover-list"]/li')
# 5.发送请求保存图片
for li in lis:
url = li.find_element_by_xpath('.//img[@class="DyImg-content is-normal "]').get_attribute("src")
name = li.find_element_by_xpath('.//h2[@class="DyListCover-user"]').text
try:
url = re.match(".*\.jpg", url).group()
response = requests.get(url)
with open("./img/" + name + ".jpg", "wb") as f:
f.write(response.content)
except:
url = re.match(".*\.png", url).group()
response = requests.get(url)
with open("./img/" + name + ".png", "wb") as f:
f.write(response.content)
print(name)
print(url)
# 6.退出/下一页
driver.close()
结果图
python爬斗鱼直播房间名和主播名_斗鱼爬虫,爬取颜值频道的主播图片和名字相关推荐
- 使用seleniumphantomjs+bs4抓取斗鱼直播房间信息
使用selenium&phantomjs+bs4抓取斗鱼直播房间信息 # -*- coding:utf-8 -*-from selenium import webdriver from bs4 ...
- 手机斗鱼tv显示与服务器通讯失败,热门手机知识:斗鱼直播加载失败如何解决?解决斗鱼直播加载失败操作步骤...
手机这种移动通讯设备闲置已经相当的普及了,大多数的手机用户,对手机的相关知识都不了解.现在各种各样的数码设备在我们的生活当中几乎可以说是无处不在,平时我们使用的手机,IP,电脑等等这些都属于数码设备, ...
- 经典爬虫学习(四)-selsenium实现斗鱼直播房间信息爬取
本案例中通过两种不同的selenium作用实现了对斗鱼直播平台的房间信息进行多页爬取. selenium实现信息爬取以及页面跳转功能 selenium实现页面跳转功能,lxml解析库实现数据爬取功能 ...
- 基于selenium的斗鱼直播房间详细信息自动化爬虫
from selenium import webdriver import time #导入 ActionChains 类 from selenium.webdriver import ActionC ...
- python爬虫豆瓣电影评价_使用爬虫爬取豆瓣电影影评数据Python版
在 使用爬虫爬取豆瓣电影影评数据Java版 一文中已详细讲解了爬虫的实现细节,本篇仅为展示Python版本爬虫实现,所以直接上代码 完整代码 爬虫主程序 # 爬虫启动入口 from C02.data ...
- sqlplus 主键 设置_浅谈MyBatis-Plus学习之Oracle的主键Sequence设置
一.Oracle的主键Sequence设置简介 在Oracle数据库中不支持主键自增策略,它是通过Sequence序列来进行完成的,因此需要在MP中进行相关配置 二.相关配置如下 2.1.pom.xm ...
- python 使用selenium爬取斗鱼直播房间信息
用到的模块 今天没课,开启正片 selenium 打开浏览器提取数据 time 每打开一个页面睡眠几秒,防止太快报错还有被发现 json 写入文件要用到 完整代码如下(为了减少代码就不使用类了) fr ...
- python爬虫爬取京东商品评价_网络爬虫-爬取京东商品评价数据
前段时间做商品评价的语义分析,需要大量的电商数据,于是乎就自己动手爬取京东的数据.第一次接触爬虫是使用selenium爬取CNKI的摘要,基于惯性思维的我仍然想用selenium+Firefox的方法 ...
- python爬取妹子图片_利用爬虫爬取清纯妹子图片
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 from bs4 import BeautifulSoup import requests import time import os def get_h ...
最新文章
- jmeter导入已有的脚本_jmeter导入badboy录制的脚本
- .net core vs java_VS Code 1.19.3调试.net core 2并始终满足“只能调试64位进程”
- POJ 3267为什么优先队列超时,DP就能过,难过
- hdu4353 Finding Mine三角形内的点数
- cmd批量修改文件名 增加文字_Dynamo自动批量化修改文件名称
- 绝了!一个 rm -rf 把公司整个数据库删没了
- Jar运行的几个方法
- linux机器的物理内存监控,Linux内存监控工具
- Delphi中的字符串压缩与解压缩
- 【DevExpress】 SearchLookUpEdit
- Selenium学习笔记||三、BeautifulSoup
- 爬虫练习案例:交通路况
- python使用ffmpeg合并两个MP4视频
- ICPC 昆明 单挑打铁记
- vc 文字转换到机内码,输入汉字和数字, 输出一串16进制码(数字-〉ASII码,汉字—〉国标码)...
- 用Python 操作 Excel,这篇文章别错过了!(超全总结)
- 将一个实体类复制到另一个实体类
- Python学习规划
- Roxio MyDVD(DVD制作软件)v3.0.0.8中文版
- 百度新一轮干部轮岗:沈抖领军智能云,何俊杰负责移动生态
热门文章
- Excel中反转一列数据的几种方法
- 线程池 (通俗易懂)
- 测角误差估计算法matlab,Harris角点检测 及 Matlab实验
- 关于Error during artifact deployment. See server log for details.问题
- 三星ARM Cortex-A8 S5PV210(蜂鸟)简介
- Linux查看文件内容的方法
- LA 4043 Ants
- 【正点原子FPGA连载】第十二章呼吸灯实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
- 鹰迪电商:抖音pk分数怎么看不见?
- 图片太大不要慌,简单的调整图片大小