今天尝试了下获取爬取B站直播间的弹幕,主要分为以下几步:
获取弹幕所在的数据信息,通过查看网页源码--Network刷新文件,其中msg中存放着弹幕信息
采用requests.post的方式来获取html文件信息,其中传递了url和data参数
html=requests.post(self.url,data=self.form)
data_all=html.json()['data']['room']
然后通过['data']['room']来获取其中的弹幕内容
单次信息如下
{'text': '11', 'nickname': '木木茶', 'uname_color': '', 'uid': 103497027, 'timeline': '2019-07-27 21:09:51',
'isadmin': 0, 'vip': 0, 'svip': 0, 'medal': [], 'title': ['', ''], 'user_level': [1, 0, 9868950, '>50000'],
'rank': 10000, 'teamid': 0, 'rnd': '1564231979','user_title': '', 'guard_level': 0, 'bubble': 0,
'check_info': {'ts': 1564232991, 'ct': '80D9D285'}}
其中你可以拿取自己需要的内容,比如用户昵称['nickname'],弹幕内容['text'],弹幕时间['timeline'],用户等级,vip信息等
将自己需要的信息取出
html=requests.post(url,data=form)
data_all=html.json()['data']['room']
for data in data_all:
timeline_new=data['timeline']
if timeline_new>timeline_old:
timeline_old=timeline_new
print(data['text'])#获取的是弹幕内容
print(data['nickname'])#获取弹幕发送者的昵称
print(data['timeline'])#获取弹幕发送的时间
完成了基本的功能,但想要做好还需要进一步修改
参考博客
b站直播弹幕获取
Python爬取哔哩哔哩实时直播弹幕