python获得视频弹幕,我爱腾讯视频

大家好,今天教大家爬取企鹅视频的弹幕。

首先打开腾讯视频的网页。

本次使用的技术是selenium和requests

现在讲一下思路,因为我想获取那个视频的弹幕就能获得,所以要加一个用户输入的功能,所以我使用selenium进行输入,使用requests进行获取弹幕,现在开始实现。

首先导包

我就把所有要使用的包都列出了,这里就不一一讲解了,反正全部写入代码里就行

movie_name = input("请输入您想要的哪部电影的评论:")

这里用户输入自己想要的电影评论

driver = webdriver.Chrome()
driver.maximize_window()
driver.get('https://v.qq.com/channel/movie')

这个是自动化操作打开网页的代码

接着该把用户输入的文本传到腾讯视频的搜索框里,我们打开开发者工具定位搜索框

这里我们可以轻易看出定位到了,接下来写代码

driver.find_element_by_id('keywords').send_keys(movie_name)
search_bar = driver.find_element_by_xpath('//*[@id="keywords"]')
actions = ActionChains(driver)
actions.move_to_element(search_bar).perform()

这样我们的文本已经输入到搜索框里了,然后该模拟鼠标进行点击搜索,我们再次定位到搜索按钮

button = wait.until(EC.element_to_be_clickable((By.XPATH, '//*[@id="searchForm"]/button/div/div/div')))
button.click()

这样我们成功来到了二级界面,按照上面的方法我们再次模拟鼠标点击立即播放到三级界面。

 

到这里自动化结束了,关闭所有窗口

driver.quit()

接下来使用requests爬取视频弹幕,

 我们进入电影界面打开开发者模式进行分析界面

像弹幕这种数据100%都是二次渲染上去的,所以我们直接打开

这些里面就有我们的弹幕数据,只需要慢慢分析就可以发现

其中数字显示的就是我们要的弹幕数据,两个数字之间的其他数据是每一帧画面的视频,如果要爬取视频可以通过这些进行操作获得,我们这次只获得弹幕数据,只分析字母里面的。

我们打开随意一个数字数据不难发现,content中这么人性化的语言就是我们的弹幕数据

接下来我们打开两个数字数据进行分析比较

https://dm.video.qq.com/barrage/segment/s00242sxrne/t/v1/2040000/2070000

https://dm.video.qq.com/barrage/segment/s00242sxrne/t/v1/2070000/2100000

其中https://dm.video.qq.com/barrage/segment/这个是域名,s00242sxrne这个是每个电影的字母标识,2040000/2070000是以30000为单位进行递增的,存完之后接着往下一数字递增。

到这里最麻烦的分析结束了,剩下的写逻辑和保存就可以了

这里我懒得敲了,直接图片奉上。

现在我们运行试试

ok,运行没问题。

总结一下,这个弹幕我个人感觉挺简单的,唯一的难点就是分析弹幕数据,看完之后自己可以线下试试。

有问题的,想讨论的,想要源代码的加我qq 3540889826。欢迎一起交流

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值