我让openclaw做了一个 B 站弹幕分析SKILL:自动抓取 + 词云 + 情感分析 + 舆情报告(开源)

我让openclaw做了一个 B 站弹幕分析SKILL:自动抓取 + 词云 + 情感分析 + 舆情报告(开源)

大家好,最近我让openclaw把我自己在内容运营里常用的一套“弹幕分析流程”做成了一个可复用的小项目:

👉 bilibili-danmaku
GitHub:https://github.com/Smartloe/bilibili-danmaku

核心目标很直接:

  • 给我一个 B 站视频链接
  • 自动抓取弹幕
  • 自动做分词清洗
  • 自动输出词云图 + 情感分析 + 舆情报告

适合做内容复盘、热点观察、用户反馈提炼。


一、这个项目解决了什么问题?

日常做视频复盘时,常见痛点是:

  1. 弹幕采集麻烦:每次手动导出/复制,效率很低。
  2. 词云质量不稳定:不清洗会被“哈哈哈/666/这边那边”污染。
  3. 舆情判断缺标准:没有统一口径,沟通时容易“拍脑袋”。

这个项目把整条链路打通了:

抓取 → 清洗 → 关键词 → 词云 → 情感 → 报告

二、功能特性

  • ✅ 自动解析 BVID -> CID,抓取弹幕 XML
  • ✅ 导出结构化数据:CSV / JSON / TXT
  • jieba 分词 + 干扰词清洗
  • SnowNLP 情感分析(正/中/负分布)
  • wordcloud 生成高密度中文词云 PNG
  • ✅ 自动生成 Markdown 舆情报告

三、项目结构

bilibili-danmaku/ ├── SKILL.md ├── README.md ├── README.en.md ├── requirements.txt ├── scripts/ │ ├── ensure_env.sh │ ├── fetch_danmaku.py │ ├── fetch.sh │ ├── analyze_danmaku.py │ └── analyze.sh ├── references/ │ ├── methodology.md │ └── stopwords.default.txt └── output/ 

四、在 OpenClaw 里一键使用(推荐)

如果你本身就在用 OpenClaw,最省事的方式是直接从 ClawHub 安装:

clawhub install bilibili-danmaku 

安装后开启一个新的 OpenClaw 会话,直接给视频链接即可调用技能完成:

  • 弹幕抓取
  • 词云生成
  • 情感分析
  • 舆情报告输出

五、源码方式(3 步)

1)安装依赖

cd bilibili-danmaku bash scripts/ensure_env.sh 

2)抓取弹幕

python3 scripts/fetch_danmaku.py \--url"https://www.bilibili.com/video/BV17JfuBqEqg"\--outdir"./output"

支持短链:

python3 scripts/fetch_danmaku.py --url"https://b23.tv/gO0nMGs"--outdir"./output"

3)分析并出报告

bash scripts/analyze.sh \"./output/<xxx>_danmaku.csv"\"./output/<xxx>_meta.json"\"./output"\"task_name"

输出文件:

  • task_name_top_words.json
  • task_name_sentiment.json
  • task_name_wordcloud.png
  • task_name_report.md

六、为什么这版词云更“干净”?

我在分词后做了数据清洗,重点是四件事:

  1. 停用词过滤:默认词表 + 自定义词表
  2. 噪声词过滤:比如 哈哈哈 / 233 / 666 / 纯符号
  3. token 规范化:别名合并、重复字符压缩
  4. 高文档频率短词剔除:去掉“出现太广但信息量低”的词

你还可以临时追加干扰词:

./.venv/bin/python scripts/analyze_danmaku.py \--csv"./output/<xxx>_danmaku.csv"\--meta"./output/<xxx>_meta.json"\--outdir"./output"\--name"task_clean"\ --extra-stopwords "妈妈,亲戚,那边,这边"

七、情感分析怎么做?

使用 SnowNLP,每条弹幕都会得到一个 0~1 的情绪分:

  • >= 0.60:positive
  • <= 0.40:negative
  • 中间:neutral

最后汇总成:

  • 正向/中性/负向占比
  • 平均情绪分
  • 代表性正负样本

这对“选题复盘”和“评论区风向判断”很实用。


八、适用场景

  • 内容运营:复盘某条视频的用户反馈
  • 新媒体团队:快速形成“可汇报”的舆情材料
  • 创作者:看粉丝关注点与争议点
  • 数据分析同学:做多视频横向对比

九、我自己的使用建议

如果你要把它用于日常工作流,我建议:

  1. 先跑单视频,确认数据链路与参数
  2. 再跑批量视频,做横向对比
  3. 维护一个自己的 stopwords 词表(按垂类持续迭代)
  4. 报告里优先看三件事:
    • 情绪结构是否异常
    • 高频词是否偏离内容定位
    • 负向样本是否集中在某个可改进点

十、开源地址

如果你刚好也在做内容分析,欢迎直接拿去用:

🔗 GitHub:https://github.com/Smartloe/bilibili-danmaku

欢迎提 issue / PR,一起把它打磨成更顺手的中文内容分析工具。🚀


十一、免责声明

请遵守 B站平台规则与相关法律法规。
本项目仅用于公开数据分析与研究,不用于违规抓取和滥用。

Read more

Claude之父AI编程技巧五:GitHub代码审查集成——让AI成为你的代码守护者

Claude之父AI编程技巧五:GitHub代码审查集成——让AI成为你的代码守护者

Claude之父AI编程技巧五:GitHub代码审查集成——让AI成为你的代码守护者 引言 代码审查(Code Review)是保证代码质量的关键环节,但也是最耗时的工作之一。人工审查每一行代码、每一个PR不仅耗费大量时间,还容易因为疲劳而遗漏问题。将Claude Code与GitHub集成后,你可以拥有一个24小时不间断工作的代码审查助手,它不会疲劳,不会情绪化,能够发现那些容易被忽视的问题。 本文将深入探讨如何配置和使用Claude Code的GitHub集成,让AI成为你团队代码质量的守护者。 GitHub集成架构概述 工作流程 ┌─────────────────────────────────────────────────────────────────┐ │ GitHub + Claude Code 工作流 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ 开发者提交PR │ │ ↓ │ │ GitHub Actions自动触发 │ │ ↓ │ │ Cla

By Ne0inhk

git2.53.0安装步骤

⭐ 一、安装(核心选项直接抄) 安装界面选择建议核心原因组件选择✅ 保留默认勾选,取消 Check daily for updates自动更新没必要,核心功能够用默认编辑器✅ 选 Use Visual Studio Code as Git's default editor避免 Vim 学习成本,和开发工具统一初始分支名✅ 选 Override,分支名填 main适配 GitHub/Gitee 主流规范PATH 配置✅ 选 Git from the command line and also from 3rd-party software多终端可用(Git Bash/CMD/VSCode)SSH 客户端✅

By Ne0inhk
安装openclaw时出现npm error code ENOENT npm error syscall spawn git报错的解决方案

安装openclaw时出现npm error code ENOENT npm error syscall spawn git报错的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为ZEEKLOG博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。 本文主要介绍了安装openclaw时出现npm error code ENOENT npm error syscall spawn git报错的解决方案,希望能对使用openclaw的同学们有所帮助。 文章目录 * 1. 问题描述 * 2. 解决方案 1. 问题描述 今天在使用命令安装openclaw时,却出现了npm error code ENOENT和npm error syscall spawn git的错误提示,具体报错信息如下图所示: 在经过了亲身的实践后,终于找到了解决问题的方案,最终将逐步的操作过程总结如下。希望能对遇到同样bug的同学们有所帮助。

By Ne0inhk
[JAVA探索之路]带你理解Git工作流程

[JAVA探索之路]带你理解Git工作流程

目录 引言 一、Git核心概念 二、四种主流工作流 中心化工作流 功能分支工作流 GitFlow工作流 Forking工作流 场景选择推荐 三、Git实用工具和小技巧  Git钩子 急救命令 四、一些小建议 引言 想象一下,你和几个朋友一起写一本小说。如果大家都直接在同一个文档上改,很快就会乱套:有人删了重要情节,有人同时修改同一段落,最后谁也不知道哪个版本是对的。 Git就是解决这个问题的“超级版本管理器”,而工作流程就是大家约定好的“写作规矩”。没有规矩,再好的工具也会用乱。今天,我就带你理清各种Git工作流,找到适合你团队的那一套。 一、Git核心概念 * 仓库:就是你的项目文件夹,Git会记录里面所有文件的变化 * 提交:相当于给当前版本拍张“快照”,并写上说明 * 分支:从主线分出去的“平行世界”,可以在里面大胆实验而不影响主线 * 合并:把分支的改动整合回主线 简单来说,

By Ne0inhk