今天介绍一个获取B站数据的Python扩展库-bilibili_api

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:101677771

可以获取的数据包括:

video-视频模块

user-用户模块

dynamic-动态模块

这次用“Running Man”十周年特辑的视频,来做个获取弹幕的Demo。

我是对比

没有对比,就没有伤害,就像最近的“哈工大”某学生和“浙大”某学生一样。

这是之前获取弹幕的过程:

1、弹幕数据接口

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”

1)安装过程

安装需要依赖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对象,传入两个参数:

bvid="BV1gC4y1h722"(视频的BV号)

verify=verify(根据sessdata和csrf,获取弹幕)

获取的弹幕数据为“Danmaku类”的列表,通过遍历,打印它的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站视频和用户的数据,至于数据获取下来怎么玩,就看自己的想象力啦~

本文相关源码下载:https://alltodata.cowtransfer.com/s/6c255cd808b742

3行Python代码采集B站(弹幕、评论、用户)数据相关推荐

  1. python爬取b站弹幕并进行数据可视化

    python爬取b站弹幕并进行数据可视化 1.第一步,爬取b站弹幕 我们随便打开一个b站视频 打开开发者模式,在network下搜索list,可以找到该视频的弹幕文件 打开之后是这个样子的 结构还是比 ...

  2. 不到70行 Python 代码,轻松玩转 RFM 用户分析模型(附案例数据和代码)

    作者 | 周志鹏 责编 | 刘静 本文从RFM模型概念入手,结合实际案例,详解Python实现模型的每一步操作,并提供案例同款源数据,以供同学们知行合一. 注:想直接下载代码和数据的同学可以空降文末 ...

  3. python层次分析模型_不到70行Python代码,轻松玩转RFM用户分析模型

    本文从RFM模型概念入手,结合实际案例,详解Python实现模型的每一步操作,并提供案例同款源数据,以供同学们知行合一. 注:想直接下载代码和数据的同学可以空降文末 看这篇文章前源数据长这样: 学完后 ...

  4. 曝肝三天,两千行Python代码,制作B站视频下载工具(附源码)

    曝肝三天,两千行Python代码,制作B站视频下载工具(附源码) 文章目录 一.准备工作 二.预览 1.启动 2.解析 3.下载中 4.下载完成 5.结果 三.设计流程 1.bilibili_vide ...

  5. Python爬取B站弹幕方法介绍

    Python爬取B站弹幕方法介绍 文章目录 Python爬取B站弹幕方法介绍 前言 寻找弹幕数据 编写爬虫 B站弹幕数量 新技术介绍 参考文章 前言 最近同学要做东西,需要用 B 站的视频对应的弹幕数 ...

  6. python接收弹幕_闲着没事,尝试一下用Python爬取B站弹幕呀~

    原标题:闲着没事,尝试一下用Python爬取B站弹幕呀~ 前言 最近同学要做东西,需要用 B 站的视频对应的弹幕数据做分析,于是请我帮忙爬取 B 站视频的弹幕数据. 对于爬虫而言,我们需要找到对应数据 ...

  7. 聚类 python 代码_不足 20 行 Python 代码,高效实现 k-means 均值聚类算法

    下载好向圈APP可以快速联系圈友 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 不足 20 行 Python 代码,高效实现 k-means 均值聚类算法-1.jpg (143.81 KB, ...

  8. 萌新学习Python爬取B站弹幕+R语言分词demo说明

    代码地址如下: http://www.demodashi.com/demo/11578.html 一.写在前面 之前在简书首页看到了Python爬虫的介绍,于是就想着爬取B站弹幕并绘制词云,因此有了这 ...

  9. bert获得词向量_只需几行 Python 代码,即可用 BERT 玩转词嵌入!

    作者 | Anirudh_S 译者 | Sambodhi 编辑 | 张之栋 AI 前线导读: 在自然语言处理领域中,诞生于 2018 年末的 BERT 非常的"火热".强悍如 BE ...

最新文章

  1. VM虚拟机的配置文件(.vmx)损坏修复
  2. 网站被黑你隔了多久才知道?
  3. PropertyGrid 控件使用方法
  4. Spark 【数据挖掘平台介绍】 - Spark 1.1.0(看范式粒度)
  5. springcloud maven打包部署
  6. 03:计算书费【一维数组】
  7. JavaScript遭嫌弃,“反JS”主义者兴起
  8. LinkedList类源码阅读
  9. 事务的四大特性-ADID特性
  10. 怎样调整计算机视角,电脑调节不了CAD极轴角度怎样解决|电脑中调节CAD极轴角度的方法...
  11. 小米体脂秤2内部方案一览,附拆解维修记录
  12. hdu6608 Fansblog(威尔逊定理)
  13. mysql association_mybatis 一对一与一对多collection和association的使用
  14. execl批量创建文件夹乱码解决方案
  15. ABB机器人 String 的读取和写入
  16. 关于vim gf问题
  17. 【产品经理】手绘风格在网页设计中的运用
  18. 电脑html连接电视无信号,康佳液晶电视与电脑连接后无信号输入怎么解决?
  19. Vim/Cscope使用
  20. 我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?

热门文章

  1. python随堂技术演讲时间表
  2. 中间固定两边自适应 两边固定中间自适应 promise
  3. java 自动装箱自动拆箱
  4. Android后台服务---无交互时的Service
  5. Application Virtualization 4.5 部署之(二)
  6. Nginx并发数、每秒连接数、下载速度限制,防攻击杀手锏
  7. Caddy - Web服务器的新秀 高性能 配置简单 动态代理 负载均衡
  8. NPM包管理器跟换国内镜像CNPM
  9. Hibernate Tomcat JNDI DataSource示例教程
  10. Spring-Cloud的版本是如何定义的