环境:Win10  需要安装 Chromedriver

Chromedriver下载(需对应浏览器的版本)

这些是我最近在学 selenium 模块爬取得斗鱼直播数据,以下爬取的是 图片、详情地址、标题、类别、观看热度、主播

以下也提供了代码作参考:

#!/usr/bin/env python3
# -*- coding:UTF-8 -*-
__author__ = 'Jachin'
from selenium import webdriver
from retrying import retry
import time
import jsonclass DouYu():def __init__(self):self.start_url = 'https://www.douyu.com/directory/all'self.driver = webdriver.Chrome()@retry(stop_max_attempt_number=5)  # 尝试多次请求def get_content_list(self):li_list = self.driver.find_elements_by_xpath("//ul[@class='layout-Cover-list']/li")content_list = []for li in li_list:item = {}item["img"] = li.find_element_by_xpath(".//img[@class='DyImg-content is-normal ']").get_attribute('src')item['url'] = li.find_element_by_xpath(".//a[@class='DyListCover-wrap']").get_attribute('href')item['title'] = li.find_element_by_xpath(".//h3[@class='DyListCover-intro']").get_attribute('title')item['categroies'] = li.find_element_by_xpath(".//span[@class='DyListCover-zone']").textitem['watch_num'] = li.find_element_by_xpath(".//span[@class='DyListCover-hot']").textitem['anchor'] = li.find_element_by_xpath(".//h2[@class='DyListCover-user']").textprint(item)content_list.append(item)# 提取下一页元素next_url = self.driver.find_elements_by_xpath("//span[@class='dy-Pagination-item-custom']")next_url = next_url[0] if len(next_url) > 0 else Nonereturn content_list, next_urldef save_content_list(self, content_list):with open('douyu2.txt', 'a', encoding='utf-8')as f:for content in content_list:f.write(json.dumps(content, ensure_ascii=False))f.write("\n")print("已保存成功")def run(self):# 1. 准备url# 2. 发送请求,获取响应self.driver.get(self.start_url)# 3. 提取数据,提取下一页的元素content_list, next_url = self.get_content_list()# 4. 保存self.save_content_list(content_list)# 5. 点击下一页,数据的提取循环while next_url is not None:next_url.click()  # 页面没有完全加载完,会报错time.sleep(2)content_list, next_url = self.get_content_list()self.save_content_list(content_list)if __name__ == '__main__':douyu = DouYu()douyu.run()

最后附上一张爬取成功的图片:

公众号:码之成长

使用 Selenium 爬取斗鱼直播数据(2019最新)相关推荐

  1. python爬虫 爬取斗鱼直播数据

    from time import sleepimport requests from bs4 import BeautifulSoup# 爬取分类页面数据 #获取斗鱼分类页面数据 def get_di ...

  2. python使用selenium爬取斗鱼房间数据并写入mongodb数据库

    本篇文章是对之前斗鱼爬虫的修改,将爬取到的数据直接写入mongodb数据库中 (今天学习到mongodb) from selenium import webdriver import time fro ...

  3. 爬虫项目4[爬取斗鱼直播数据]

    不用通过页面源码获取,直接找数据的入口 斗鱼直播是一个典型使用ajax的页面,对于这样的页面简单粗暴,直接在网页控制台的xhr里面找入口 请求requests 解析json() 在线json校验工具: ...

  4. python 使用selenium爬取斗鱼直播房间信息

    用到的模块 今天没课,开启正片 selenium 打开浏览器提取数据 time 每打开一个页面睡眠几秒,防止太快报错还有被发现 json 写入文件要用到 完整代码如下(为了减少代码就不使用类了) fr ...

  5. 使用selenium自动爬取斗鱼直播平台的所有房间信息

    使用selenium自动爬取斗鱼直播平台的所有房间信息 文章目录 使用selenium自动爬取斗鱼直播平台的所有房间信息 使用selenium实现动态页面模拟点击 什么是selenium? selen ...

  6. Python爬取斗鱼直播网站信息

    一.需求 爬取斗鱼直播网站信息,如直播名字.主播名字.热度.图片和房间网址,将这些数据保存到csv文件中,并单独创建文件夹保存图片. 斗鱼直播网址:https://www.douyu.com/g_LO ...

  7. Python爬取斗鱼直播信息

    一.需求 爬取斗鱼直播网站信息,如直播名字.主播名字.热度.图片和房间网址,将这些数据保存到csv文件中,并单独创建文件夹保存图片. 斗鱼直播网址:https://www.douyu.com/g_LO ...

  8. 实时爬取斗鱼直播时的弹幕消息

    最近想爬取实时消息,上网查了下,所以爬取斗鱼直播的弹幕消息做了下练习,这个开源的代码有很多,但是具体是怎么爬取到的还是要仔细地研究下.想爬取斗鱼的弹幕消息,按照常用的做法是打开网页用抓包工具抓包,但是 ...

  9. 使用scrapy爬取斗鱼直播间信息

    目录 1. 谷歌抓包工具的使用 1.1 打开Chrome开发者工具的方法 1.2 开发者工具的结构 1.3 network模块 2. 使用谷歌抓包工具抓取斗鱼数据 3. 使用scrapy爬取斗鱼直播间 ...

最新文章

  1. 4 年开发 43 款软件,这位乡村教师火了
  2. Office word 2007不能另存为pdf格式的解决方法
  3. 解决通过QQ客户端的空间邮箱等打开空间邮箱
  4. python多线程和多进程——python并行编程实验
  5. Oracle10g的flashback drop
  6. 兰州谋定百合品牌-农业大健康·万祥军:功能性农业产业脱贫
  7. WHENEVER SQLERROR EXIT SQL.SQLCODE
  8. 网站后台发通知页面效果图
  9. 固定定位(HTML、CSS)
  10. Python——安装OpenCV2
  11. java开发怎么包装_Java开发知识之Java的包装类
  12. Export xlsx导入
  13. 为什么用CDN给你网站加速?
  14. w3af 安装并配置桌面和快速启动栏
  15. 不用命令行WinRAR解压7z.001格式的文件
  16. c# MODBUS协议源码 上/下位机源码烧写Flash工具
  17. 《你该认清你的恐惧,而不是目标》笔记
  18. 什么是内存泄露,如何避免内存泄露 C++
  19. DVD碟片w ndows7,Windows7-USB-DVD-Tool下载地址及使用方法解决
  20. 如何使用Angular Router在Angular 9应用程序中创建导航

热门文章

  1. 数学建模算法笔记(2)——主成分分析
  2. 新闻丨智链万源CEO董宁参加可信区块链推进计划第二次全体会议
  3. 1,大数据介绍 ( 考题 )
  4. 带有 HTML5 <dialog> Tag的原生弹出窗口对话框
  5. (BIOS+UEFI双启)天意u盘维护系统技术员版V1.0
  6. HT and TTC
  7. 迅搜(XunSearch)+ThinkPHP5实现标题的拼音或拼音首字母缩写搜索
  8. 动态网页html语言,动态网页设计HTML语言基础.ppt
  9. WIFI 5GHZ使用频率
  10. 刚刚,Python之父Guido Van Rossum宣布加入微软