b站个人直播年报【大爽歌作】 介绍与演示
大家好,我是大爽,一个b站UP主兼主播。
最近做了一个b站直播个人年报,该年报为代码文件生成。
且代码已打包到一个可视化工具中(exe)只需两步就可以获得自己的专属年报。
代码已上传到我的github: https://github.com/BigShuang/live-report
年报工具获取和使用方法: https://www.bilibili.com/video/BV1or4y1K7ts
这里给大家介绍下我的这个项目。
1 - 年报亮点
该年报可以简单直观的展示:
- 你今年开播了多少天,每月开播天数
- 多少人进入了你的直播间,谁进入次数最多,进入次数排名前20的人名和进入次数。
- 多少人发了弹幕,谁发的弹幕数量最多,发弹幕数量排名前20的人名和弹幕条数。
(还会滚动展示发弹幕数量排名前20的人发的部分弹幕) - 今年直播间里有多少人关注了你,每月关注人数。
- 多少人投喂了礼物,谁投喂的数量最多,投喂数量排名前20的人名和投喂数量。
- 大航海特写,哪些人给你开通了大航海,如果只有一个人的话,还会滚动展示这个人发的部分弹幕。
2 - 年报展示
年报并不是展示静态的图片,而是动态地展示数据。
动画过程已录制成视频投稿b站:https://www.bilibili.com/video/BV1zK4y1p76A
年报可分为8页,本文只截图展示下每页的效果
0. 开始页:xxx的2020个人直播年报

- 每月直播天数
(说明:该天数实际为打开弹幕姬天数,个人认为其可以作为直播天数的有效参考)

- 进入直播间次数及排行榜

3. 部分弹幕展示与弹幕数量排行榜


4. 每月关注直播间人数

5. 直播间投喂排行榜

- 大航海特写
只有一个就单独特写,多个就直接罗列

- 结束页,可写寄语。

3 - 技术路线
- python3 读取分析弹幕姬日志
- html/css/js 展示年报
使用到的js library:
- chart.js
- anime.js
4 - 现有缺陷
数据准确问题
年报数据来源于弹幕姬工具,弹幕姬工具获取到的数据来源于b站直播间。
除代码有bug的情况外,这两个来源的问题也会导致数据不准确(且该问题目前暂时无法解决)。
数据并不完全准确,不准确详情或原因如下:
- 未开启弹幕姬,导致未记录弹幕
- 弹幕姬奔溃,导致未记录弹幕
- 有些弹幕是(弹幕姬or直播间的)新版特性,比如进入直播间这种弹幕可能是某个月份之后才有的(数据有限,只是猜测)。
- 直播间天数实际采用数据为弹幕姬开启天数。
b站个人直播年报【大爽歌作】 介绍与演示的更多相关文章
- 【大爽python算法】递归算法进化之回溯算法(backtracking)
作者自我介绍:大爽歌, b站小UP主 , python1对1辅导老师, 时常直播编程,直播时免费回答简单问题. 前置知识: 递归算法(recursion algorithm). 我的递归教程: [教程 ...
- 大爽Python入门教程 总目录
作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 大爽Python入门公开课教案 本篇博客为公开课教案目录,正文内容在目录章节链接的博客里 除目录本身外,没有链接的章节, ...
- 大爽Python入门教程 3-2 条件判断: if...elif..else
大爽Python入门公开课教案 点击查看教程总目录 简单回顾if 回顾下第一章的代码 >>> x = 5 >>> if x > 0: ... print(&q ...
- 大爽Python入门教程 2-4 练习
大爽Python入门公开课教案 点击查看教程总目录 方位输出 第一章有一个思考题,方位变换: 小明同学站在平原上,面朝北方,向左转51次之后(每次只转90度), 小明面朝哪里?小明转过了多少圈? (3 ...
- 大爽Python入门教程 1-4 习题
大爽Python入门公开课教案 点击查看教程总目录 1 [思考]方向变换 小明同学站在平原上,面朝北方,向左转51次之后(每次只转90度), 小明面朝哪里?小明转过了多少圈? (360度为一圈,圈数向 ...
- 大爽Python入门教程 3-3 循环:`for`、`while`
大爽Python入门公开课教案 点击查看教程总目录 for循环 可迭代对象iterable 不同于其他语言. python的for循环只能用于遍历 可迭代对象iterable 的项. 即只支持以下语法 ...
- 大爽Python入门教程 3-4 实践例题
大爽Python入门公开课教案 点击查看教程总目录 1. 求和 使用循环,计算列表所有项的和,并输出这个和. 列表示例 lst = [8, 5, 7, 12, 19, 21, 10, 3, 2, 11 ...
- 大爽Python入门教程 3-5 习题
大爽Python入门公开课教案 点击查看教程总目录 1 求平方和 使用循环,计算列表所有项的平方和,并输出这个和. 列表示例 lst = [8, 5, 7, 12, 19, 21, 10, 3, 2, ...
- 大爽Python入门教程 3-6 答案
大爽Python入门公开课教案 点击查看教程总目录 1 求平方和 使用循环,计算列表所有项的平方和,并输出这个和. 列表示例 lst = [8, 5, 7, 12, 19, 21, 10, 3, 2, ...
随机推荐
- Flawfinder在Python2和Python3环境下对代码进行扫描方法
1. Flawfinder Flawfinder是一款开源的关于C/C++静态扫描分析工具,其根据内部字典数据库进行静态搜索,匹配简单的缺陷与漏洞. 官网:https://dwheeler.com/f ...
- [源码解析] PyTorch 流水线并行实现 (4)--前向计算
[源码解析] PyTorch 流水线并行实现 (4)--前向计算 目录 [源码解析] PyTorch 流水线并行实现 (4)--前向计算 0x00 摘要 0x01 论文 1.1 引论 1.1.1 数据 ...
- 一、mybatis入门案例
今天学习了mybatis框架,简单记录一下mybatis第一个入门案例,目标是使用Mybatis作为持久层框架,执行查询数据的SQL语句并且获取结果集 基本步骤: 物理建模 逻辑建模 引入依赖 创建持 ...
- 使用vxe table组件时,edit-render配置$select',选中option后关闭cell的激活状态,显示选中option的value问题
在我的项目中使用vxe table组件时,edit-render配置{name: '$select', options: [{label:"脉搏",value:"maib ...
- JVM学习笔记——方法区
方法区 Method Area 方法区在逻辑上属于堆的一部分,但可以看做是一块独立于 Java 堆的内存空间.所有的字段和方法字节码,以及一些特殊的方法,如构造函数,接口代码在此定义.所有定义方法的信 ...
- tomcat启动程序报错
1.问题 23-Apr-2021 10:53:38.897 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.de ...
- 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践
作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...
- linux下修改IP地址的方法
linux下修改IP地址的方法 1.网卡的命名规则 在centos7中,en表示着:ethernet以太网,即现在所用的局域网,enX(X常见有以下3种类型) 2.IP地址的临时修改(重启后失效) 查 ...
- 改善深层神经网络-week1编程题(Regularization)
Regularization Deep Learning models have so much flexibility and capacity that overfitting can be a ...
- Java High Level REST Client 使用地理位置查询
Java High Level REST Client 使用地理位置查询 一.需求 二.对应的query语句 三.对应java代码 1.引入 jar 包 2.创建 RestHighLevelClien ...