专注于 弹幕舆情与节奏分析 的智能工具,输入B站视频链接,自动提取弹幕数据并生成专业的分析提示词,供大模型深度解读舆情走向、情感演变和互动节奏。
bash
pip install requests
text
@skill://B站弹幕舆情分析 请分析这个视频的弹幕舆情:https://www.bilibili.com/video/BV1xx97xx9xx
bash
# 提取弹幕并生成分析数据
python main.py "https://www.bilibili.com/video/BV1xx97xx9xx"
# 指定输出目录
python main.py "https://www.bilibili.com/video/BV1xx97xx9xx" -o /path/to/output
# 使用BV号
python main.py "BV1xx97xx9xx"
text
输入B站视频链接
│
▼
1. 提取BV号 (正则匹配)
│
▼
2. 获取视频信息 (标题、UP主、时长、CID等)
│
▼
3. 获取弹幕数据 (XML/压缩格式)
│
▼
4. 数据整理与分析
├── 按时间分段(10段)
├── 统计弹幕类型分布
├── 情感关键词统计(正面/负面/疑问)
└── 每段采样代表性弹幕
│
▼
5. 生成分析提示词
└── 输出结构化提示词供大模型分析
每段包含:
生成结构化的分析提示词,包含以下维度:
数据接口URL参数视频信息https://api.bilibili.com/x/web-interface/view?bvid={bvid}bvid弹幕数据https://api.bilibili.com/x/v1/dm/list.so?oid={cid}oid(视频cid)
python
DEFAULT_HEADERS = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36...',
'Referer': 'https://www.bilibili.com/',
'Origin': 'https://www.bilibili.com'
}
正面关键词: 牛、强、棒、好、赞、顶、泪目、感动、喜欢、爱、甜、炸、绝、完美、厉害、超
负面关键词: 烂、差、垃圾、废物、蠢、尴尬、难、崩、无语、失望、难看、无聊、扯、假
疑问关键词: ?、?、怎么、为什么、什么、如何、是不是、能不能
xxx_弹幕分析数据.json)#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)#可直接复制给大模型的完整分析提示词,包含:
xxx_弹幕舆情分析报告.md)#自动生成的完整Markdown格式分析报告,包含:
markdown
# B站视频弹幕舆情与节奏分析报告
## 视频信息
| 项目 | 内容 |
|------|------|
| 标题 | xxx |
| BV号 | BV1xx |
| 弹幕总数 | 1234 条 |
## 弹幕统计概览
| 指标 | 数值 |
|------|------|
| 正面关键词占比 | 10.39% |
| 负面关键词占比 | 3.78% |
## 弹幕时间分布
| 时段 | 弹幕数 | 密度 |
|00:00-01:13 | 201 | ######---- |
|01:13-02:27 | 165 | #####----- |
## 舆情分析
**整体情感倾向**: 正面
**结论**: 观众对该视频的整体情感倾向为正面...
参数说明示例urlB站视频链接或BV号BV1ky97B9Efn``-o, --output输出目录-o ./output
问题原因解决获取弹幕为0CID获取失败或视频无弹幕检查网络或视频有效性412/403错误风控拦截添加延时或稍后重试视频信息获取失败BV号无效检查链接格式是否正确
text
B站弹幕舆情分析/
├── SKILL.md # 本说明文件
├── _skillhub_meta.json # Skill元数据
├── main.py # 核心脚本
└── requirements.txt # Python依赖
用户输入:
text
@skill://B站弹幕舆情分析 请分析这个视频的弹幕舆情:https://www.bilibili.com/video/BV1csDuBREjo
执行过程:
提取BV号: BV1csDuBREjo
获取视频信息:
获取弹幕:通过CID调用弹幕接口,获取到 1800 条 弹幕
数据整理:
生成输出文件:
分析结果:
指标数值弹幕总数1800 条正面关键词占比10.39%负面关键词占比3.78%正面/负面比2.75 倍整体情感倾向正面最高密度时段11:03-12:17 (290条)
弹幕密度分布:
text
| 时段 | 弹幕数 | 密度 |
|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 | ########## | ← 高潮阶段
输出成果:
报告预览(部分):
markdown
# B站视频弹幕舆情与节奏分析报告
## 视频信息
| 项目 | 内容 |
|------|------|
| 标题 | 三十五年的《宇宙级安全声明》,东大,开始撤回! |
| BV号 | `BV1csDuBREjo` |
| 弹幕总数 | **1800 条** |
## 弹幕统计概览
| 指标 | 数值 |
|------|------|
| 正面关键词占比 | 10.39% |
| 负面关键词占比 | 3.78% |
**整体情感倾向**: 正面
## 舆情分析
**结论**: 观众对该视频的整体情感倾向为正面,正面评价占比10.39%,负面评价占比3.78%,正面是负面的2.75倍。
## 风险提示
**整体舆情**: 弹幕内容积极正面,未发现明显舆情风险点。