序言
今日详细介绍一个获取B站数据信息的Python拓展库-bilibili_api
能够获取的数据信息包含:
- video-视频模块
- user-客户模块
- dynamic-动态性模块
PS:若有必须Python学习材料的小伙伴们能够加正下方的群去找完全免费管理人员领到
此次用“Running Man”十周年特别篇的视频,来做下获取弹幕的Demo。假如你也喜欢看“RM”,那大家便是最好的朋友。
我是比照
沒有比照 ,就没有伤害,如同近期的“哈尔滨工业大学 ”某学员和“浙江大学”某学员一样 。
它是以前获取弹幕的全过程:
1、弹幕api接口
https://comment.bilibili.com/123072475.xml (一个固定不动的url地址 视频的cid .xml)
2 、运用Request模块,获取数据信息
3、运用Xpath分析数据信息
接下去 ,现在是时候演出真实的技术性了。
历经bilibili_api的封裝,弹幕数据信息获取的一部分仅用了一行编码:
danmu = video_info.get_danmaku()
相对的获取视频的基础信息和评价信息也是一样的方便快捷。
basic_info = video_info.get_video_info()
comments = video_info.get_comments()
快速开始
接下去,文中将用bilibili_api获取“Running Man”十周年特别篇的弹幕数据信息 ,并绘图词云 。
视频的连接:
https://www.bilibili.com/video/BV1gC4y1h722
B站有av号和bv号,重做以后,在连接中立即显示信息的是bv号 ,这两个务必出示一个。
bvid是b站新的视频唯一标志符,由12位数据、英文字母构成,英文大小写比较敏感 ,传到时请包括头顶部的“BV ”
例如:“BV1gC4y1h722”
0)安裝全过程
安裝必须依靠request 模块 ,它是把B站数据信息的API封裝起来了。
根据pip安装就可以:
pip install bilibili_api
1)导进模块
from bilibili_api import Verify
from bilibili_api.video import VideoInfo
from bilibili_api.video import Danmaku
VideoInfo类-获取视频的信息(弹幕 、评价、投币机总数、播放量等)
Danmaku类-弹幕类,用以获取和推送弹幕
Verify 类,能用可无需 。一部分视频信息必须登陆(即必须 SESSDATA )后才可以应用(如历史时间弹幕获取)。
对视频开展关注 、投币机等客户实际操作则必须 SESSDATA 和 csrf 。
有关 SESSDATA 和 csrf 获取的详尽方式 ,可参照以下连接:
https://github.com/Passkou/bilibili_api/wiki/SESSDATA和CSRF获取方式 (Chrome为例子)
2)获取弹幕数据信息
建立VideoInfo目标,传到2个主要参数:
- bvid="BV1gC4y1h722"(视频的BV号)
- verify=verify(依据sessdata和csrf,获取弹幕)
获取的弹幕数据信息为“Danmaku类”的目录 ,根据解析xml,复印它的text就可以
贴个编码:
verify = Verify(sessdata="你的", csrf="你的")
video_info = VideoInfo(bvid="BV1gC4y1h722", verify=verify)
danmu = video_info.get_danmaku()
for i in danmu:
print(i.text)
3)绘图词云
根据jieba词性标注和WorldCloud绘图词云 。
可根据WordCloud目标,传到“背景色 ” ,“背景”,“字体样式”等主要参数。
贴个编码:
wc = WordCloud(
background_color='white',
mask=background_Image,
font_path=r'./SourceHanSerifCN-Medium.otf',
color_func=random_color_func,
random_state=50,
)
word_cloud = wc.generate(words_str) # 造成词云
word_cloud.to_file("rm.jpg") #存图
# 显示信息词云照片
plt.imshow(word_cloud)
plt.axis('off')
plt.show()
4)最后实际效果
根据词云,能够见到最显著的便是 “开心 十周年 ”、“RM 十周年”、“哈哈哈哈哈哈哈哈哈哈”等 ,谢谢Running Man...
我是总结
根据这一模块“bilibili_api ”,能够迅速的获取B站视频和客户的数据信息,对于数据信息获取出来咋玩 ,全看自身的想像力啦~
文中的文本及图片来自互联网,仅作学习培训 、沟通交流应用,不具备一切商业行为,著作权归著作人全部,如不太好请立即在线留言以作解决。
创作者:天作
文章来源于网络 ,如有侵权请联系站长QQ61910465删除本文版权归去快排wWw.seogUrublog.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系qq❉61910465