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检测网页是否有日常链接
Jun 03 Python
python自然语言编码转换模块codecs介绍
Apr 08 Python
pygame学习笔记(5):游戏精灵
Apr 15 Python
Python星号*与**用法分析
Feb 02 Python
Python socket套接字实现C/S模式远程命令执行功能案例
Jul 06 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 Python
python 生成任意形状的凸包图代码
Apr 16 Python
Python三维绘图之Matplotlib库的使用方法
Sep 20 Python
如何使用 Flask 做一个评论系统
Nov 27 Python
pytorch显存一直变大的解决方案
Apr 08 Python
Python打包exe时各种异常处理方案总结
May 18 Python
基于Python和openCV实现图像的全景拼接详细步骤
Oct 05 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 源代码压缩小工具
2009/12/22 PHP
学习php设计模式 php实现状态模式
2015/12/07 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
Laravel基础_关于view共享数据的示例讲解
2019/10/14 PHP
javascript iframe编程相关代码
2009/12/28 Javascript
基于jQuery的表格操作插件
2010/04/22 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
JS远程获取网页源代码实例
2013/09/05 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
JavaScript中使用ActiveXObject操作本地文件夹的方法
2014/03/28 Javascript
点击A元素触发B元素的事件在IE8下会识别成A元素
2014/09/04 Javascript
jQuery过滤选择器用法分析
2015/02/10 Javascript
JS实现淡蓝色简洁竖向Tab点击切换效果
2015/10/06 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
探究Vue.js 2.0新增的虚拟DOM
2016/10/20 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
webpack打包单页面如何引用的js
2017/06/07 Javascript
深入讲解xhr(XMLHttpRequest)/jsonp请求之abort
2017/07/26 Javascript
layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例
2017/09/22 Javascript
vue-router路由与页面间导航实例解析
2017/11/07 Javascript
js中DOM事件绑定分析
2018/03/18 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
es6函数之严格模式用法实例分析
2020/03/17 Javascript
python使用7z解压apk包的方法
2015/04/18 Python
详解Python进程间通信之命名管道
2017/08/28 Python
Win7 64位下python3.6.5安装配置图文教程
2020/10/27 Python
python 解决flask uwsgi 获取不到全局变量的问题
2019/12/22 Python
python如何绘制疫情图
2020/09/16 Python
纯HTML5+CSS3制作生日蛋糕(代码易懂)
2016/11/16 HTML / CSS
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
汽车检测与维修专业求职信
2013/10/30 职场文书
数控专业应届生求职信
2013/11/27 职场文书
城市创卫标语
2014/06/17 职场文书
2015年专项整治工作总结
2015/04/03 职场文书
2015初中生物教研组工作总结
2015/07/21 职场文书
springboot创建的web项目整合Quartz框架的项目实践
2022/06/21 Java/Android