python基于selenium爬取斗鱼弹幕


Posted in Python onFebruary 20, 2021

针对弹幕的爬取我们如果只需要获取看到的网页里面的而数据,使用selenium就能实现,对于直播平台来说,往往有第三方平台api让你获取数据(可以获取发弹幕,发弹幕者的名字礼物等等,这需要客户端向弹幕服务器发送登录请求,心跳信息的发送等等)只获取弹幕信息储存到txt文件中,上代码,上图片

代码如下:

import time
from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
# 使用headless无界面浏览器模式
# chrome_options.add_argument('--headless')
# chrome_options.add_argument('--disable-gpu')
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)
browser = webdriver.Chrome(chrome_options=chrome_options)
url = 'https://www.douyu.com/'


def getDanmu(homeId):
  homeHref = url+str(homeId)
  browser.get(homeHref)

  while 1: 
    time.sleep(2)
    try:
      for i in browser.find_elements_by_xpath('.//div[@class=" danmu-6e95c1"]/div/div'):
        if len(i.text) > 0:
          try:
            print(i.text)
          except:
            pass
          saveDanmu(i.text)
        else:
          continue
    except:
      time.sleep(2)
      for i in browser.find_elements_by_xpath('.//div[@class=" danmu-6e95c1"]/div/div'):
        if len(i.text) > 0:
          try:
            print(i.text)
          except:
            pass
          saveDanmu(i.text)
        else:
          continue


def saveDanmu(danmu):
  with open('danmu.txt', 'a+', encoding='utf-8')as f:
    f.write(danmu+'\n')

if __name__ == '__main__':
  num = input('请输入需要查询的房间号:')
  getDanmu(num)

python基于selenium爬取斗鱼弹幕

以上就是python基于selenium爬取斗鱼弹幕的详细内容,更多关于python 爬取斗鱼弹幕的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python复制与引用用法分析
Apr 08 Python
python使用post提交数据到远程url的方法
Apr 29 Python
构建Python包的五个简单准则简介
Jun 15 Python
Python使用ntplib库同步校准当地时间的方法
Jul 02 Python
浅谈Pandas 排序之后索引的问题
Jun 07 Python
python中redis查看剩余过期时间及用正则通配符批量删除key的方法
Jul 30 Python
python ---lambda匿名函数介绍
Mar 13 Python
python实现最小二乘法线性拟合
Jul 19 Python
基于Python实现扑克牌面试题
Dec 11 Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 Python
python实现飞机大战游戏(pygame版)
Oct 26 Python
Python2及Python3如何实现兼容切换
Sep 01 Python
Python爬虫+Tkinter制作一个翻译软件的示例
Feb 20 #Python
python爬虫用request库处理cookie的实例讲解
Feb 20 #Python
python 多线程爬取壁纸网站的示例
Feb 20 #Python
python 制作网站小说下载器
Feb 20 #Python
如何用python爬取微博热搜数据并保存
Feb 20 #Python
python 统计list中各个元素出现的次数的几种方法
Feb 20 #Python
pandas统计重复值次数的方法实现
Feb 20 #Python
You might like
PHP中单引号与双引号的区别分析
2014/08/19 PHP
ThinkPHP有变量的where条件分页实例
2014/11/03 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
php实现分页功能的详细实例方法
2019/09/29 PHP
设定php简写功能的方法
2019/11/28 PHP
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
javascript实现节点(div)名称编辑
2014/12/17 Javascript
简介JavaScript中toTimeString()方法的使用
2015/06/12 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
Nodejs如何搭建Web服务器
2016/03/28 NodeJs
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
JavaScript面试题大全(推荐)
2016/09/22 Javascript
JavaScript排序算法动画演示效果的实现方法
2016/10/18 Javascript
vue+swiper实现组件化开发的实例代码
2017/10/26 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
Vue中的scoped实现原理及穿透方法
2018/05/15 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
React学习之受控组件与数据共享实例分析
2020/01/06 Javascript
python写入中英文字符串到文件的方法
2015/05/06 Python
Python之Scrapy爬虫框架安装及使用详解
2017/11/16 Python
python3操作微信itchat实现发送图片
2018/02/24 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Numpy 改变数组维度的几种方法小结
2018/08/02 Python
Python制作动态字符图的实例
2019/01/27 Python
对django views中 request, response的常用操作详解
2019/07/17 Python
keras tensorflow 实现在python下多进程运行
2020/02/06 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
教师作风整改措施思想汇报
2014/10/12 职场文书
区域销售经理岗位职责
2015/04/02 职场文书
2015年仓库管理员工作总结
2015/04/21 职场文书
Python极值整数的边界探讨分析
2021/09/15 Python
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL