python获取虎牙弹幕_python实现虎牙直播弹幕
如题:如何实现B站直播弹幕呢?
分析过程:
进入虎牙官网—>随便点个直播房间—>F12抓包,刷新
分析每一条请求,点响应,找到弹幕信息。如图
image.png
可以看出返回信息是json格式的,提交方法是get,再分析一下提交参数
image.png
分析完成。
代码部分:
import requests
import time
import random
url = 'http://www.huya.com/cache1min.php?m=chatMessage&tid=22808102&sid=2536653492' # get请求,向这个网址提交数据
#构造get提交参数
form = {'m':'chatMessage',
'tid':'22808102',
'sid':'2536653492',
}
header = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:57.0) Gecko/20100101 Firefox/57.0'}
#循环提交数据,达到实时获取弹幕信息效果,通过调试发现,太快只提交一次数据的话弹幕可能会重复,故,暂停一下。
#但是暂停一下提交,还是可能获取到重复的数据。故这里采用前后数据进行比较的方法防止弹幕重复,当然你也可以用多次比较。
while True:
html1 = requests.get(url,headers =header,params=form)#开始提交数据
text1 = list(map(lambda ii: html1.json()['result']['chats'][ii]['chat'], range(20)))#获取数据,因为返回的数据是json格式,故可以用分层切片来取到弹幕那层,然后用map和lamda函数的用法取得弹幕信息,最后直接转换成list
#print(text1)
time.sleep(random.uniform(2,3)) #暂停3秒,再提交数据
html2 = requests.get(url, headers= header,params=form)
text2 = list(map(lambda ii: html2.json()['result']['chats'][ii]['chat'], range(20)))
#print(text2)
huyadanmu_txt = [item for item in text2 if item not in text1]#比较两个弹幕信息,列表推导弹幕信息
for danmu in huyadanmu_txt:
time.sleep(random.uniform(1,2))
print('虎牙直播间实时弹幕:',danmu)
python获取虎牙弹幕_python实现虎牙直播弹幕相关推荐
- python接收弹幕_Python项目2:弹幕复读机
这个项目是我从B站的一个up主那学到的(原视频号269525280),感觉很是有趣,就是很欠打哈哈 一.功能 功能很简单,就是将B站直播间的每条弹幕重新发送一遍. 二.思路 先通过post请求获取实时 ...
- python获取输入数字_python获取从命令行输入数字的方法
本文实例讲述了python获取从命令行输入数字的方法.分享给大家供大家参考.具体如下: #---------------------------------------- # Name: numeri ...
- python 获取脚本当前路径_Python获取脚本所在目录的正确方法
http://www.jb51.net/article/49035.htm 文章主要介绍了Python获取脚本所在目录的正确方法 1.以前的方法如果是要获得程序运行的当前目录所在位置,那么可以使用os ...
- python获取网络时间_python获取网络时间和本地时间
今天我们来看一下如何用python获取网络时间和本地时间,直接上代码吧,代码中都有注释. python获取网络时间获取网络时间 def getBeijinTime(): ""&qu ...
- python获取网页图片_Python获取网页上图片下载地址的方法
本文实例讲述了Python获取网页上图片下载地址的方法.分享给大家供大家参考.具体如下: 这里获取网页上图片的下载地址是正在写的数据采集中的一段,代码如下: #!/user/bin/python3 i ...
- python 获取照片拍摄时间_Python实现获取照片拍摄日期并重命名的方法
本文实例讲述了Python实现获取照片拍摄日期并重命名的方法.分享给大家供大家参考,具体如下: python获取照片的拍摄日期并重命名.不支持重复处理的中断. 重命名为:拍摄日期__原文件名 impo ...
- python获取文件路径名_python文件名获取文件路径
如何使用Python获取文件所在目录和文件名 python中如何根据文件名找他的路径.现在我遍历到怎么才能将某一个文件对应的路径找到呢? 遍历用os.walk: import osfrom os.pa ...
- python获取网页图片_python抓取网页中的图片示例
python抓取网页中的图片示例 代码如下: #coding:utf8 import re import urllib def getHTML(url): page = urllib.urlopen( ...
- python获取当前年月日_Python获取、格式化当前时间日期的方法
Python获取当前时间_获取格式化时间: Python获取当前时间: 使用 time.time( ) 获取到距离1970年1月1日的秒数(浮点数),然后传递给 localtime 获取当前时间 #使 ...
- python获取登录按钮_Python:Selenium模拟Chrome浏览器抓取淘宝商品信息
对于采用异步加载技术的网页,有时候想通过逆向工程的方式来设计爬虫进行爬取会比较困难,因此,要想通过python获取异步加载数据往往可以使用Selenium模拟浏览器的方式来获取. Selenium是一 ...
最新文章
- 为什么python对空格,缩进要求这么高?缩进稍微不对就报错!
- 在Ubuntu 14.04中使SublimeText 3支持中文输入法
- vue-:class的几种使用方式
- Redis整合springboot实现哨兵模式
- ajax荷马史诗,荷马史诗(8)
- 政府大数据治理的挑战及对策
- 电子围栏判断_电子围栏大用处:进出罐箱指定区域自动通知amp;罐箱库存和使用率自动计算...
- 计算机职业素养论文1500字,职业素养课后感想1500字
- [任天堂社长访谈之:Nintendo 3DS内置软件
- 华盛顿大学计算机专业gpa,华盛顿大学计算机专业相关介绍
- 公司银行考试有C语言程序吗,银行春季校园招聘计算机岗笔试考什么?会考编程吗?...
- Android智能聊天机器人
- Android内存优化深入解析
- 计算机驱动程序恢愎,如果意外卸载了计算机鼠标驱动程序,该怎么办_解决方案,以不小心卸载鼠标驱动程序...
- 机器学习 笔记04 ---决策树(DT):理论+代码实现
- 视频压缩软件,视频压缩软件哪个最好用?
- 校园歌手信息评分系统(C语言),大一新生期末实训
- Spring Boot 核心注解?主要由哪几个注解组成?
- 光环国际20周年庆六城联动峰会「北京场」圆满结束!
- POJ1837-Balance