Install
openclaw skills install @thcjp/bilibili-toolkit-freeopenclaw skills install @thcjp/bilibili-toolkit-freeB站工具箱免费版是一款面向个人用户的轻量级B站内容工具,集成热门监控、视频下载、数据查看、字幕获取与弹幕获取五大模块。无需登录即可使用核心功能,适合个人用户日常浏览B站内容、下载视频离线观看等场景。
| 模块 | 功能 | 是否需要登录 |
|---|---|---|
| 热门监控 | 热门视频、热搜、排行榜、必看榜 | 否 |
| 视频下载 | 360p-1080p标准画质下载 | 否 |
| 数据查看 | 播放量、点赞数等基础统计 | 否 |
| 字幕获取 | CC字幕下载,多语言支持 | 否 |
| 弹幕获取 | 视频弹幕内容获取 | 否 |
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置。 |
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 按照skill规范执行核心功能执行操作,遵循单一意图原则。 输出: 返回核心功能执行的执行结果,包含操作状态和输出数据。
input_params参数,支持创建/查询/导出操作用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 按照skill规范执行参数配置与调用操作,遵循单一意图原则。 输出: 返回参数配置与调用的执行结果,包含操作状态和输出数据。
config_options参数,支持修改/重置/导入操作用output_format参数进行配置。
输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 按照skill规范执行结果处理与输出操作,遵循单一意图原则。 输出: 返回结果处理与输出的执行结果,包含操作状态和输出数据。
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:站热门监控、数据查看与字幕获、免登录使用核心功、适合个人用户、站工具箱免费版、面向个人用户的轻、站内容工具、热门视频监控、实时查看、站热门、标准画质视频下载、视频数据查看、查看播放量、下载视频、支持多语言、获取视频弹幕内容、无需登录即可使用等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。查看B站当前热门视频、热搜话题与排行榜。
# 查看热门视频
python main.py hot_monitor get_hot '{"page_size": 10}'
# 查看热搜话题
python main.py hot_monitor get_trending '{"limit": 5}'
# 查看每周必看榜
python main.py hot_monitor get_weekly
# 查看游戏区排行榜
python main.py hot_monitor get_rank '{"category": "game", "limit": 10}'
# Python API调用
import asyncio
from main import BilibiliAllInOne
app = BilibiliAllInOne()
async def browse_hot():
# 获取热门视频
hot_videos = await app.execute("hot_monitor", "get_hot", page_size=10)
print("=== 热门视频 ===")
for v in hot_videos['data']:
print(f"{v['title']} - 播放:{v['play']}")
# 获取游戏区排行
game_rank = await app.execute("hot_monitor", "get_rank",
category="game", limit=5)
print("=== 游戏区排行 ===")
for v in game_rank['data']:
print(f"{v['title']} - 综合得分:{v['score']}")
asyncio.run(browse_hot())
下载B站视频到本地,离线观看。
# 获取视频信息
python main.py downloader get_info '{"url": "BV1xx411c7mD"}'
# 查看可用画质
python main.py downloader get_formats '{"url": "BV1xx411c7mD"}'
# 下载1080p视频
python main.py downloader download '{"url": "BV1xx411c7mD", "quality": "1080p", "format": "mp4"}'
# 仅下载音频
python main.py downloader download '{"url": "BV1xx411c7mD", "format": "mp3"}'
# Python API下载
async def download_video():
# 获取视频信息
info = await app.execute("downloader", "get_info", url="BV1xx411c7mD")
print(f"标题: {info['data']['title']}")
# 下载视频
result = await app.execute("downloader", "download",
url="BV1xx411c7mD",
quality="1080p",
format="mp4")
print(f"下载完成: {result}")
asyncio.run(download_video())
下载视频字幕用于学习,获取弹幕了解观众反馈。
# 查看可用字幕
python main.py subtitle list '{"url": "BV1xx411c7mD"}'
# 下载中文字幕(SRT格式)
python main.py subtitle download '{"url": "BV1xx411c7mD", "language": "zh-CN", "format": "srt"}'
# 获取弹幕
python main.py player get_danmaku '{"url": "BV1xx411c7mD"}'
async def get_subtitles_and_danmaku():
# 获取字幕列表
subs = await app.execute("subtitle", "list", url="BV1xx411c7mD")
print(f"可用字幕: {subs['data']}")
# 下载中文字幕
result = await app.execute("subtitle", "download",
url="BV1xx411c7mD",
language="zh-CN",
format="srt")
print(f"字幕已下载: {result}")
# 获取弹幕
danmaku = await app.execute("player", "get_danmaku", url="BV1xx411c7mD")
print(f"弹幕数量: {len(danmaku['data'])}")
asyncio.run(get_subtitles_and_danmaku())
以下场景B站工具箱免费版不适合处理:
需要数据分析、报表生成、统计洞察、数据可视化时使用。不适用于非本工具能力范围的需求。
pip install httpx aiohttp beautifulsoup4 lxml requests
python main.py hot_monitor get_hot '{"page_size": 5}'
python main.py downloader download '{"url": "BV1xx411c7mD", "quality": "1080p"}'
结果处理: 执行完成后,查看输出结果确认操作状态。成功时输出包含处理摘要和结果数据;失败时根据错误信息排查问题,查阅错误处理章节获取恢复步骤。
| 分区 | 代码 |
|---|---|
| 全部 | all |
| 动画 | anime |
| 音乐 | music |
| 舞蹈 | dance |
| 游戏 | game |
| 科技 | tech |
| 生活 | life |
| 美食 | food |
| 汽车 | car |
| 时尚 | fashion |
| 娱乐 | entertainment |
| 影视 | movie |
| 电视剧 | tv |
| 画质 | 代码 | 需要登录 |
|---|---|---|
| 360p | 360p | 否 |
| 480p | 480p | 否 |
| 720p | 720p | 否 |
| 1080p | 1080p | 否 |
| 1080p+ | 1080p+ | 是 |
| 4K | 4k | 是 |
| 格式 | 代码 | 说明 |
|---|---|---|
| SRT | srt | 默认,通用字幕格式 |
| ASS | ass | 高级字幕,支持样式 |
| VTT | vtt | Web标准 |
| TXT | txt | 纯文本 |
| JSON | json | 程序处理 |
需要提供B站登录凭证(SESSDATA等)。免费版仅支持1080p及以下画质,更高画质请使用PRO版本。
系统会自动尝试语音识别转写(需要安装faster-whisper)和弹幕提取作为备用方案。
免费版支持单个下载。如需批量下载,建议升级至PRO版本使用batch_download功能。
默认下载MP4格式。也可选择FLV格式或仅提取MP3音频。
免费版无需登录,受B站公开API的频率限制。建议合理使用,避免短时间内大量请求。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| Python 3 | 运行时 | 必需 | python.org 下载安装 |
| httpx | Python库 | 必需 | pip install httpx |
| aiohttp | Python库 | 必需 | pip install aiohttp |
| beautifulsoup4 | Python库 | 必需 | pip install beautifulsoup4 |
| lxml | Python库 | 必需 | pip install lxml |
| requests | Python库 | 必需 | pip install requests |
| faster-whisper | Python库 | 可选 | pip install faster-whisper(语音识别转写) |
| ffmpeg | 系统工具 | 可选 | 系统包管理器安装 |
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |