BiliBili-Danmaku-Analyzer-v1 — BiliBili-Danmaku-分析器-v1
v1B站视频弹幕舆情与节奏分析。输入B站视频链接,自动提取弹幕数据,通过大模型分析弹幕的舆情倾向、情感演变、节奏热度分布等。
运行时依赖
安装命令
点击复制技能文档
B站弹幕舆情分析 技能
专注于弹幕舆情与节奏分析的智能工具,输入B站视频链接,自动提取弹幕数据并生成专业的分析提示词,供大模型深度解读舆情走向、情感演变和互动节奏。
核心功能 ✅ 弹幕提取 - 提取视频所有弹幕(滚动、底端、顶端等全部类型) ✅ 时间分段分析 - 将弹幕按视频时间轴分10段,便于分析节奏变化 ✅ 情感统计概览 - 统计正面/负面/疑问关键词占比 ✅ 弹幕采样整理 - 每段精选代表性弹幕,生成结构化分析数据 ✅ Markdown分析报告 - 自动生成完整的Markdown格式舆情分析报告 ✅ 专业分析提示词 - 生成可直接使用的大模型分析提示词 ✅ 无需登录 - 使用B站公开API,完全免费 前置条件
- 环境要求
- 依赖安装
使用方式 对话中使用 @技能://B站弹幕舆情分析 请分析这个视频的弹幕舆情:https://www.bilibili.com/video/BV1xx97xx9xx
命令行使用 # 提取弹幕并生成分析数据 python mAIn.py "https://www.bilibili.com/video/BV1xx97xx9xx"
# 指定输出目录 python mAIn.py "https://www.bilibili.com/video/BV1xx97xx9xx" -o /path/to/输出
# 使用BV号 python mAIn.py "BV1xx97xx9xx"
工作流程 输入B站视频链接 │ ▼
- 提取BV号 (正则匹配)
- 获取视频信息 (标题、UP主、时长、CID等)
- 获取弹幕数据 (XML/压缩格式)
- 数据整理与分析
- 生成分析提示词
输出内容
- 视频信息
- 弹幕统计概览
- 时间分段弹幕(10段)
每段包含:
时间范围 弹幕数量 精选弹幕样本(每段最多10条)
- 大模型分析提示词
生成结构化的分析提示词,包含以下维度:
舆情分析 整体情感倾向 情感演变轨迹 情感峰值时段 节奏分析 高能预警点 讨论热度分布 弹幕密度变化 内容特征 主要话题 梗与玩梗 用户互动类型 舆情风险点 潜在负面点 风险预警 技术实现 核心API接口 数据 接口URL 参数 视频信息 https://API.bilibili.com/x/网页-interface/view?bvid={bvid} bvid 弹幕数据 https://API.bilibili.com/x/v1/dm/列出.so?oid={cid} oid(视频cid) 请求头设置 DEFAULT_HEADERS = { 'User-代理': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) 应用le网页Kit/537.36...', 'Referer': 'https://www.bilibili.com/', 'Origin': 'https://www.bilibili.com' }
情感关键词
正面关键词: 牛、强、棒、好、赞、顶、泪目、感动、喜欢、爱、甜、炸、绝、完美、厉害、超
负面关键词: 烂、差、垃圾、废物、蠢、尴尬、难、崩、无语、失望、难看、无聊、扯、假
疑问关键词: ?、?、怎么、为什么、什么、如何、是不是、能不能
输出文件 JSON格式 (xxx_弹幕分析数据.json) { "video": { "bvid": "BV1xx97xx9xx", "title": "视频标题", "owner": "UP主名称", "duration": 600, "duration_str": "10:00" }, "statistics": { "total_count": 1234, "type_distribution": {"滚动": 1000, "底端": 200, "顶端": 34}, "positive_keyword_count": 150, "negative_keyword_count": 50, "question_keyword_count": 80, "positive_rate": 12.15, "negative_rate": 4.05, "question_rate": 6.48 }, "time_segments": [...], "sampled_danmakus": [...] }
分析提示词文件 (xxx_分析提示词.txt)
可直接复制给大模型的完整分析提示词,包含:
视频信息 弹幕统计 分段弹幕内容 分析要求(舆情、节奏、内容特征、风险点) Markdown分析报告 (xxx_弹幕舆情分析报告.md)
自动生成的完整Markdown格式分析报告,包含:
报告结构 视频信息: 标题、BV号、UP主、时长、弹幕总数 弹幕统计概览: 类型分布、正面/负面/疑问关键词占比 弹幕时间分布: 密度分布图、高密度时段TOP3 分时段弹幕详情: 每段代表性弹幕样本 舆情分析: 整体情感倾向、情感峰值时段、高能预警点 节奏分析: 弹幕密度变化特征 主要发现: 弹幕内容特征总结 风险提示: 舆情风险预警 总结: 核心发现总结 报告示例 # B站视频弹幕舆情与节奏分析报告
视频信息
| 项目 | 内容 |
|---|---|
| 标题 | xxx |
| BV号 | BV1xx |
| 弹幕总数 | 1234 条 |
弹幕统计概览
| 指标 | 数值 |
|---|---|
| 正面关键词占比 | 10.39% |
| 负面关键词占比 | 3.78% |
弹幕时间分布
| 时段 | 弹幕数 | 密度 | |00:00-01:13 | 201 | ######---- | |01:13-02:27 | 165 | #####----- |舆情分析
整体情感倾向: 正面 结论: 观众对该视频的整体情感倾向为正面...脚本参数 参数 说明 示例 url B站视频链接或BV号 BV1ky97B9Efn -o, --输出 输出目录 -o ./输出 注意事项 无需登录: 脚本使用B站公开API,无需登录即可提取弹幕 弹幕采样: 为控制数据量,每段时间弹幕最多采样20条 频率限制: 建议控制请求频率,避免触发风控 大模型分析: 脚本仅生成分析提示词,实际分析需大模型完成 故障排除 问题 原因 解决 获取弹幕为0 CID获取失败或视频无弹幕 检查网络或视频有效性 412/403错误 风控拦截 添加延时或稍后重试 视频信息获取失败 BV号无效 检查链接格式是否正确 文件结构 B站弹幕舆情分析/ ├── 技能.md # 本说明文件 ├── _技能hub_meta.json # 技能元数据 ├── mAIn.py # 核心脚本 └── requirements.txt # Python依赖
实际案例 案例:三十五年的《宇宙级安全声明》弹幕舆情分析
用户输入:
@技能://B站弹幕舆情分析 请分析这个视频的弹幕舆情:https://www.bilibili.com/video/BV1csDuBREjo
执行过程:
提取BV号:BV1csDuBREjo
获取视频信息:
标题:三十五年的《宇宙级安全声明》,东大,开始撤回! UP主:老王聊天 时长:12:17
获取弹幕:通过CID调用弹幕接口,获取到 1800 条弹幕
数据整理:
按时间分10段 统计情感关键词:正面187次,负面68次,疑问182次 每段采样代表性弹幕
生成输出文件:
JSON数据文件 分析提示词文件 Markdown分析报告 ← 核心新增功能
分析结果:
指标 数值 弹幕总数 1800 条 正面关键词占比 10.39% 负面关键词占比 3.78% 正面/负面比 2.75 倍 整体情感倾向 正面 最高密度时段 11:03-12:17 (290条)
弹幕密度分布:
| 时段 | 弹幕数 | 密度 | |00:00-01:13 | 201 | ######---- | |01:13-02:27 | 165 | #####----- | |02:27-03:41 | 146 | #####----- | |03:41-04:54 | 216 | #######--- | |04:54-06:08 | 99 | ###------- | |06:08-07:22 | 136 | ####------ | |07:22-08:35 | 216 | #######--- | |08:35-09:49 | 201 | ######---- | |09:49-11:03 | 130 | ####------ | |11:03-12:17 | 290 | ########## | ← 高潮阶段
输出成果:
✅ 成功提取 1800 条弹幕 ✅ 自动生成 Markdown 分析报告 ✅ 报告包含完整舆情分析(视频信息、统计概览、时间分布、舆情分析、节奏分析、风险提示、总结)
报告预览(部分):
# B站视频弹幕舆情与节奏分析报告
视频信息
| 项目 | 内容 |
|---|---|
| 标题 | 三十五年的《宇宙级安全声明》,东大,开始撤回! |
| BV号 | BV1csDuBREjo |
| 弹幕总数 | 1800 条 |
弹幕统计概览
| 指标 | 数值 |
|---|---|
| 正面关键词占比 | 10.39% |
| 负面关键词占比 | 3.78% |