python基于selenium爬取斗鱼弹幕

2021-02-20 19:37:56 IT技术网 互联网
浏览

针对弹幕的爬取我们如果只需要获取看到的网页里面的而数据,使用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('.//p[@class=" danmu-6e95c1"]/p/p'):
        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('.//p[@class=" danmu-6e95c1"]/p/p'):
        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 爬取斗鱼弹幕的资料请关注IT技术网其它相关文章!

您可能感兴趣的文章:

  • python协程gevent案例 爬取斗鱼图片过程解析
  • python selenium爬取斗鱼所有直播房间信息过程详解
  • Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
  • 利用python爬取斗鱼app中照片方法实例
  • python实现b站直播自动发送弹幕功能
  • 使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
  • Python爬虫自动化爬取b站实时弹幕实例方法
  • 使用Python获取爱奇艺电视剧弹幕数据的示例代码
  • 详解python爬取弹幕与数据分析
  • Python脚本如何在bilibili中查找弹幕发送者
  • Python爬虫爬取Bilibili弹幕过程解析
  • Python爬虫 bilibili视频弹幕提取过程详解
  • python3写爬取B站视频弹幕功能