ceeeb0f84c
创建了独立的skill目录和SKILL.md文档: - 完整的功能说明和使用方法 - 新会话可通过技能系统使用B站视频提取功能 - 包含故障排除、技术栈、依赖说明等 技能位置: skills/bilibili-extractor/
4.4 KiB
4.4 KiB
name, description
| name | description |
|---|---|
| bilibili-extractor | B站视频内容提取工具,使用Playwright + undetected-playwright绕过反爬虫,支持提取视频信息、统计数据、字幕并生成Markdown笔记。 |
SKILL.md - B站视频内容提取工具
功能说明
这个工具可以从B站(bilibili.com)提取视频内容并生成结构化的Markdown笔记。
核心能力:
- ✅ 绕过B站极验验证码
- ✅ 提取视频基本信息(标题、UP主、时长、发布时间)
- ✅ 获取视频统计数据(播放量、点赞、投币、收藏、分享、弹幕、评论)
- ✅ 提取视频字幕(如果有CC字幕)
- ✅ 生成结构化Markdown笔记
适用场景
当用户请求:
- "帮我提取这个B站视频的内容:[链接]"
- "分析这个B站视频:BV号"
- "获取B站视频的字幕"
- "生成B站视频的笔记"
工作原理
使用 Playwright + undetected-playwright (stealth_async) 绕过B站的反爬虫检测:
- 使用stealth模式启动浏览器
- 访问B站视频页面
- 多策略提取数据(JS变量 → HTML解析 → API备用)
- 处理验证码(如果触发)
- 生成Markdown笔记
使用方法
方式1:直接运行脚本
cd /home/admin/.openclaw/workspace
./bilibili_venv/bin/python bilibili_extractor.py
方式2:修改视频ID
编辑 bilibili_extractor.py 文件,修改 bvid 变量:
bvid = "BV11t64BJEDZ" # 修改为目标视频的BV号
方式3:作为子代理任务使用
启动子代理处理:
sessions_spawn(
task="提取B站视频内容:BV11t64BJEDZ",
model="zhipu/glm-4.7"
)
文件位置
主程序: /home/admin/.openclaw/workspace/bilibili_extractor.py
虚拟环境: /home/admin/.openclaw/workspace/bilibili_venv/
文档:
BILIBILI_EXTRACTOR_README.md- 完整技术文档USAGE.md- 快速使用指南PROJECT_SUMMARY.md- 项目总结
输出目录: /home/admin/.openclaw/workspace/notes/
处理验证码
如果遇到验证码:
- 修改脚本中的
headless参数:
# 改为非headless模式
browser = p.chromium.launch(headless=False, args=args)
- 运行脚本,浏览器会显示,手动完成验证
- 验证通过后可以改回
headless=True
支持的输入格式
- 短链接:
lid6E0m - 完整短链接:
https://b23.tv/lid6E0m - BV号:
BV11t64BJEDZ - 完整视频链接:
https://www.bilibili.com/video/BV11t64BJEDZ
短链接转换工具
如果需要将B站短链接转换为完整链接,可以使用:
./scripts/bilibili-short-to-long.sh lid6E0m
输出:https://www.bilibili.com/video/BV11t64BJEDZ
注意事项
⚠️ 反爬虫警告:
- B站可能随时更新反爬虫策略
- 频繁请求可能导致IP封禁
- 建议控制请求频率
⚠️ 法律风险:
- 仅用于个人学习
- 遵守B站服务条款
- 不要大规模爬取
故障排除
问题1:无法绕过验证码
解决方案:
- 使用非headless模式手动处理验证
- 更新 undetected-playwright 到最新版本
- 尝试更换浏览器配置参数
问题2:页面加载超时
解决方案:
- 检查网络连接
- 增加超时时间(修改脚本中的 timeout 参数)
- 使用代理IP
问题3:无法提取字幕
原因: 目标视频可能没有CC字幕
解决方案:
- 检查视频是否有字幕
- 脚本已优雅处理无字幕情况
技术栈
- Playwright - 浏览器自动化框架
- undetected-playwright - 反检测插件
- BeautifulSoup4 - HTML解析
- Python 3.10+
依赖安装
pip install playwright undetected-playwright beautifulsoup4 requests
playwright install chromium
(虚拟环境已安装所有依赖)
示例输出
生成的Markdown笔记包含:
# 时代真变了!glm4.7+playwright cli, AI自主进行自动化测试
**UP主**: 录教程的乙醇啦
**BV号**: BV11t64BJEDZ
**时长**: 04:46
**发布时间**: 2026-02-01 18:39:58
## 视频统计
- 播放量: 969
- 点赞: 22
- 投币: 10
- 收藏: 72
- 分享: 15
- 弹幕: 0
- 评论: 9
## 字幕内容
(如果有字幕)
...
相关脚本
scripts/bilibili-short-to-long.sh- B站短链接转换工具scripts/install-browser-for-openclaw.sh- 浏览器环境一键安装脚本
更多信息
查看完整文档:/home/admin/.openclaw/workspace/BILIBILI_EXTRACTOR_README.md