B站视频字幕与音频提取
快速使用
# 提取字幕(三级降级自动选择最佳来源)
python3 skills/bilibili-video/scripts/bilibili_extract.py BV1GqZUBvENu
# 完整 URL 也行
python3 skills/bilibili-video/scripts/bilibili_extract.py "https://www.bilibili.com/video/BV1GqZUBvENu/"
# 仅查看视频信息
python3 skills/bilibili-video/scripts/bilibili_extract.py --info BV1GqZUBvENu
# 仅下载音频(不转写)
python3 skills/bilibili-video/scripts/bilibili_extract.py --audio-only BV1GqZUBvENu
# 禁用 ASR 兜底(字幕不可用时仅下载音频)
python3 skills/bilibili-video/scripts/bilibili_extract.py --no-asr BV1GqZUBvENu
三级降级策略
- CC 字幕:UP 主上传的字幕,准确度最高,优先中文
- AI 字幕:B 站 AI 生成字幕,支持 ai-zh/ai-en 等 9 种语言
- 音频转写:下载音频,调用
speech-to-text.sh(飞书STT → Gemini → MiMo → Qwen 四级降级)
大部分视频前两级即可覆盖。第三级需要更多时间但可处理任何有声视频。
输出
- 目录:
/tmp/openclaw/bilibili/ - 文件:
{BV_ID}_transcript.txt - 格式:视频元信息 + 正文(自动繁转简)
登录(提升成功率)
无 cookie 可用但功能受限。遇到 412 风控时需要登录:
# 终端扫码登录
python3 skills/bilibili-video/scripts/bilibili_login.py
# 检查 cookie 是否有效
python3 skills/bilibili-video/scripts/bilibili_login.py --check
也可以从浏览器手动提取 cookie(SESSDATA、bili_jct、buvid3、DedeUserID),保存为 JSON 到 ~/.openclaw/workspace/.bilibili_cookies.json。
依赖
- bilibili-api-python(已安装,每日自动更新)
- aiohttp(已安装)
- ffmpeg(已安装,音频转写时使用)
- opencc-python-reimplemented(可选,繁转简)
踩坑记录
详见 references/api-notes.md:WBI 签名、Cookie 管理、常见错误码、AI 字幕语言代码。
Scan to join WeChat group