把六个 B 站相关的零散技能合并成一个,是 Bilibili All In One 的起点。热门监控、视频下载、数据追踪、字幕提取、播放与弹幕、投稿发布——六件事一套代码,CLI 和 Python API 双入口,基础功能不需要登录。整包 54.1 kB,版本 v1.0.24,安装 53.8k、下载 20.3k,内容创作榜第 4。
它的分层设计值得先说:热门榜单、标清下载、字幕列表、弹幕获取这些不需要任何凭证;只有 1080p+ 高清下载和投稿发布才需要浏览器会话 Cookie。这个划分决定了它的上手门槛——先当工具用,等真要投稿了再谈授权。
百度网盘下载:https://pan.baidu.com/s/1pMVzDI0s3pCLcNyYFJrvLg?pwd=fct2(提取码:fct2)
通过网盘分享的文件:wscats-bilibili-all-in-one-1.0.24.zip
链接: https://pan.baidu.com/s/1pMVzDI0s3pCLcNyYFJrvLg?pwd=fct2 提取码: fct2 复制这段内容后打开百度网盘手机App,操作更方便哦
一、基本信息
| 项目 | 内容 |
|---|---|
| 技能名称 | Bilibili All In One(bilibili-all-in-one) |
| 维护方 | wscats(个人开源,MIT 协议) |
| 定位 | B 站综合工具箱:监控 / 下载 / 追踪 / 字幕 / 播放 / 投稿 |
| 版本 | v1.0.24 |
| 社区数据 | 安装 53.8k · 下载 20.3k · 内容创作榜 #4 |
| 安全认证 | CLS 安全性认证(2026-05-06) |
| 运行环境 | Python ≥ 3.8,httpx / aiohttp / bs4 / lxml / requests;ffmpeg(下载与转码) |
| 认证要求 | 基础功能免登录;高清下载与投稿需 BILIBILI_SESSDATA 等 Cookie |
| 包体大小 | 整包 54.1 kB(publisher.py 25.9 kB、subtitle.py 23.7 kB) |
| 下载安装 | wscats-bilibili-all-in-one-1.0.24.zip(网盘,提取码 fct2) |
| 标签 | bilibili、video-download、hot-trending、subtitle、danmaku、video-publish |
二、它解决什么问题
B 站的内容工作流天然是碎的:看热门要用一个工具,下载要另一个,抽字幕再换一个,投稿回网页后台。每个环节都有自己的认证方式和参数体系,拼起来就成了一堆脚本。
更麻烦的是「同一件事有多种路子」。比如字幕,官方 CC 字幕、AI 语音识别、弹幕提取,三种来源质量不同、成功率不同,人工判断该走哪条很费神。再比如下载,清晰度、编码、音视频分离,参数组合能凑出十几种。
它的解法是把这些路子收进一套统一接口,按可用性自动降级:优先官方字幕,没有就走语音识别,再不行用弹幕兜底。用户只需要说「要这个视频的字幕」,不用关心背后走了哪条路。
它的设计哲学:把「B 站有六件事」变成「一个工具做六件事」,并且让每件事都有兜底路径。
三、核心功能
3.1 六个模块,一张表看清
| 模块 | 能力 | 需登录 | 核心文件 |
|---|---|---|---|
| 🔥 Hot Monitor | 热门视频、热搜、每周必看、分区排行榜(12 类) | 否 | hot_monitor.py 7.2 kB |
| ⬇️ Downloader | 360p–4K 多清晰度、批量、格式转换、音频提取 | 高清需要 | downloader.py 18.5 kB |
| 👀 Watcher | 播放 / 点赞 / 投币统计、定时追踪、多视频对比 | 否 | watcher.py 9.7 kB |
| 📝 Subtitle | CC 字幕下载、SRT/ASS/VTT/TXT/JSON 转换、AI 兜底 | 否 | subtitle.py 23.7 kB |
| ▶️ Player | 直链播放地址、分 P 列表、三种模式弹幕 | 否 | player.py 11.9 kB |
| 📤 Publisher | 上传投稿、草稿、定时发布、元数据编辑 | 是 | publisher.py 25.9 kB |
体积分布透露了重心:publisher.py 和 subtitle.py 各占 25.9 和 23.7 kB,是真正的复杂度所在。投稿要处理分片上传、封面、分区、标签、审核状态;字幕要处理多格式解析、编码识别、语音识别降级。这两个是最容易出问题的模块。
3.2 字幕的三级降级
这是设计最巧的一块。字幕获取按优先级走三条路:
- 官方 CC 字幕:质量最好,但不是每个视频都有。
- 语音识别兜底:接 faster-whisper,本地跑,需要额外装依赖和算力。
- 弹幕提取:从弹幕里拼出内容线索,质量最差但几乎总有。
三层都失败的概率很低。代价是 faster-whisper 要单独装,模型下载走外网,首次运行会慢。如果你只需要「大概讲了什么」,直接用弹幕那层就够了;要精确文本,就走语音识别。
3.3 投稿默认 dry-run
发布模块默认不真正执行,必须显式确认才动手。这个设计对内容创作者很重要——投稿是不可逆的公开操作,一次误发可能带来实际后果。先把「会发生什么」打印出来,人确认后再执行,这个顺序是对的。
支持草稿、定时发布、元数据编辑。定时发布对做内容排期的人尤其实用:一次准备好一周的稿,让它按点发。
3.4 双入口:CLI 与 Python API
所有操作返回结构化 JSON。main.py 5.2 kB 负责命令分发,具体逻辑在 src/ 下分模块。做自动化流水线时直接 import 调用,比走命令行更省事;手动操作时用 CLI 更快。
四、真正有价值的地方
认证分层做对了。这是最值得肯定的设计。大部分 B 站工具一上来就要 Cookie,把「只想看看热门榜」的人也挡在门外。它把需要授权的功能压到最小范围,让上手成本几乎为零。
降级路径完整。字幕的三级兜底不是噱头,是真的在处理「官方没字幕」这个高频问题。做内容二创的人最能体会这个价值——没字幕的视频等于不可用。
安全细节到位。文档提到几处具体实现:Cookie 默认内存存储、持久化时强制 0600 权限、拒绝不安全目录、ffmpeg 子进程不用 shell=True、文件名过 sanitize。这些都是踩过坑才会写的细节。
投稿默认 dry-run。把不可逆操作默认设为「只说不做」,是负责任的产品判断。
MIT 开源、接口透明。所有请求打官方 API 端点,HTTPS,无第三方上报。想确认它到底发了什么请求,读代码即可。
五、绕不开的问题
Cookie 等于账号。SESSDATA、bili_jct、buvid3 是完整会话凭证,不是受限 API Key。给出去就等于把账号交出去,泄露后果是账号失陷,不是「额度被刷」。这一点文档写得很明白,但很多人不当回事。
依赖未公开接口。B 站没有对外的开放平台,这些接口是网页端在用的。改版就可能失效,而且不会有预告。这类工具的宿命就是要持续跟版本。
风控与限流。高频调用、异常下载行为会触发风控。批量下载尤其危险——几百个请求打过去,轻则临时封禁,重则账号受限。
版权边界。下载功能本身合规,但下载的内容受版权保护。番剧、电影、付费课程这类,下载和二次分发是明确的红线。工具不负责合规,用户要自己判断。
语音识别有成本。faster-whisper 要装依赖、下模型、跑本地推理。CPU 上跑长视频很慢,GPU 上快但要有卡。这条兜底路径不是免费的。
ffmpeg 是隐含依赖。音视频分离、格式转换、合并都靠它。系统里没装 ffmpeg,下载模块会在最后一步失败,报错信息还不一定直观。
这五条问题里,前三条是「能力边界」,后两条是「现实约束」。能力边界可以靠配置和习惯绕开,现实约束只能靠接受——接口是别人的,版权是法律的,风控是平台的。用这类工具的正确心态是:把它当成一个效率放大器,别当成一个稳定基础设施。它会时不时失效,那就准备好替代路径。
六、官方风险表与解读
| 风险项 | 级别 | 说明 | 缓解措施 |
|---|---|---|---|
| 凭证敏感性 | 高 | Cookie 等同完整登录态,泄露即账号失陷 | 用测试小号,主号开二步验证,不持久化 |
| 账号风控 | 高 | 高频调用或异常下载触发限制甚至封禁 | 批量操作加延迟,控制并发,避开高峰 |
| 版权合规 | 中 | 下载受版权保护内容存在法律风险 | 仅用于个人研究,不二次分发 |
| 接口变更 | 中 | 依赖未公开 API,改版可能失效 | 关注仓库更新,锁定可用版本 |
| 本地残留 | 低 | 启用 persist 后凭据文件长期留存 | 用完清理,权限保持 0600 |
前两条都是「高」,且都指向同一件事:这个东西能做的事情,和账号绑得很紧。技术上它做了不少防护(内存存储、0600、dry-run),但防护的是「意外泄露」,挡不住「你自己决定要用主号跑批量下载」。
一条实用纪律:投稿和高清下载一律用测试小号,主号只在网页端手动操作。这条比任何参数配置都重要。
3.5 批量任务的风控规避
批量下载和批量查询是最容易把账号跑出事的两类操作。规避不是靠运气,靠几条具体规则。
控制速率。没有官方公布的阈值,实践中的安全区间是每分钟不超过 10-15 个请求。批量下载 100 个视频,按每个 3-5 秒间隔排列,整体跑完要十分钟以上——这个速度看起来慢,但比封号后重新养号快得多。
错开时段。晚高峰(20:00-23:00)平台负载高,风控更敏感。批量任务安排在上午或凌晨,触发限制的概率明显低。这不是玄学,是流量分布决定的。
模拟正常行为。只请求元数据不下载、只下 480p 不下 4K、不连续请求同一个 UP 主的所有视频——这些都是明显的机器特征。加一点随机间隔、混着做不同类型的请求,能显著降低被标记的概率。
分账号。如果任务量确实大,用多个测试账号分摊。代价是每个号都要单独取 Cookie,管理成本上升,但这是唯一能撑住「每天几百个请求」的办法。
最后一条纪律:批量任务前先小规模试跑十个,观察有没有异常(返回空、要求验证、速度骤降)。有异常立即停,别硬冲。
七、适合谁,不适合谁
| 类型 | 是否适合 | 理由 |
|---|---|---|
| 内容创作者 | 适合 | 热点监控 + 定时投稿,覆盖选题到发布 |
| 数据分析 / 研究者 | 适合 | 数据追踪 + 弹幕 + 字幕,素材获取完整 |
| 字幕组 / 翻译 | 适合 | 字幕多格式转换与合并是刚需 |
| 需要商用素材的团队 | 不适合 | 版权边界不清,商用风险高 |
| 只想下载番剧的人 | 不适合 | 明确踩版权红线,且高清要登录态 |
| 无 Python 环境的新手 | 谨慎 | 依赖链较长(Python + ffmpeg + 可选 whisper) |
八、落地路径
- 先不登录跑通监控。
hot_monitor拉一次热门榜,确认网络和依赖正常。 - 装 ffmpeg。这是下载模块的硬依赖,先装好省得后面排查。
- 试标清下载。拿一个公开视频跑 480p,验证下载、合并、转码链路。
- 试字幕。先试官方 CC,再试弹幕兜底,最后按需装 faster-whisper。
- 用小号登录。单独注册一个测试账号,取 Cookie,测高清下载与投稿。
- 投稿先 dry-run。确认元数据、分区、封面都对,再执行真实发布。
九、文件构成与安装
| 文件 | 大小 | 作用 |
|---|---|---|
main.py |
5.2 kB | CLI 入口与命令分发 |
src/publisher.py |
25.9 kB | 投稿:分片上传、封面、分区、定时发布、dry-run |
src/subtitle.py |
23.7 kB | 字幕:CC 下载、五格式转换、whisper 降级、弹幕提取 |
src/downloader.py |
18.5 kB | 下载:多清晰度、批量、音视频合并 |
src/player.py |
11.9 kB | 播放直链、分 P、弹幕三种模式 |
src/auth.py |
11.3 kB | Cookie 管理、内存存储、0600 持久化 |
src/watcher.py |
9.7 kB | 数据追踪与多视频对比 |
src/utils.py |
7.7 kB | 工具函数、文件名清洗 |
src/hot_monitor.py |
7.2 kB | 热门、热搜、必看、分区榜 |
README.md / skill.md |
16.6 / 20.9 kB | 完整说明与参数清单 |
安装:pip install -r requirements.txt,再装 ffmpeg(apt install ffmpeg 或 brew)。需要语音识别再单独装 faster-whisper。整包 54.1 kB,没有编译步骤。
十、常见问题
不登录能做什么?
热门榜单、标清下载(360p/480p)、字幕列表、弹幕、视频数据查看。高清(1080p+)和投稿才需要 Cookie。
Cookie 怎么取?
浏览器登录 B 站,开发者工具里看 SESSDATA、bili_jct、buvid3 三个值,写进环境变量。强烈建议用测试小号。
下载卡在最后一步失败?
九成是没装 ffmpeg。音视频分离后的合并靠它,缺了会在收尾阶段报错。
字幕拿不到怎么办?
说明该视频没有官方 CC。降到语音识别层(要装 faster-whisper),或者用弹幕提取凑合用。
投稿能定时吗?
能,publisher 支持定时发布。适合一次准备多条内容做排期,但注意定时任务依赖进程常驻。
会被封号吗?
高频、异常行为有风险。控制并发、加延迟、别拿主号跑批量,能规避大部分问题。
能下载付费内容吗?
技术上可能,法律上有明确风险。付费课程、番剧这类不建议碰,工具不承担合规责任。
支持分 P 视频吗?
支持。player 模块能拿到分 P 列表,downloader 可以指定 P 号单独下,也能批量下整个合集。注意合集动辄几十 P,跑之前一定算好时间和风控风险。
弹幕能导出成文件吗?
能,player 模块拿到的是结构化弹幕数据(含时间戳、模式、颜色),可以自己落成 JSON 或转成 ASS。三种模式(滚动、顶部固定、底部固定)都会保留。
直播能抓吗?
文档聚焦在视频与投稿,直播录制不在六模块范围内。要录播需要另找工具,这套帮不上。
下载的清晰度最高到多少?
4K。但 1080p 以上需要登录 Cookie,未登录只有 360p/480p。另外 4K 需要账号有对应权益,普通账号可能只给到 1080p。
字幕能直接翻译吗?
不能,它只做提取与格式转换,不做翻译。拿到 SRT 之后需要接翻译工具处理,注意时间轴要跟着调整,否则字幕会错位。
数据追踪能定时跑吗?
watcher 模块支持单次查询与多视频对比,定时需要自己套 cron。建议每小时一次即可,再密就会触发风控,且数据变化也没那么快。
能删自己的投稿吗?
publisher 聚焦上传与编辑,删除不在能力范围内。要撤稿得去网页后台手动操作,这类不可逆动作本来也不适合自动化。
结语
Bilibili All In One 是一款把「碎片」整合得比较彻底的 B 站工具。六个模块覆盖了从选题到发布的完整链路,认证分层让新手能零门槛上手,字幕的三级降级解决了最实际的问题。
用它的前提是想清楚两件事:账号安全怎么保障,版权边界在哪。这两条守住了,它是一个效率很高的内容工作台;守不住,它就是一个把自己账号和法务风险绑在一起的高危工具。工具本身没有立场,用的人得有。
最后提醒频率问题:批量下载、批量投稿这类操作,触发风控往往不是因为单次请求,而是短时间内的密集行为。把任务拆到不同时段、加上随机间隔,比研究怎么绕过验证更省事,也更不容易牵连账号。
通过网盘分享的文件:wscats-bilibili-all-in-one-1.0.24.zip
链接: https://pan.baidu.com/s/1pMVzDI0s3pCLcNyYFJrvLg?pwd=fct2 提取码: fct2 复制这段内容后打开百度网盘手机App,操作更方便哦
B站工具箱 视频下载 字幕提取 弹幕 投稿自动化
百度网盘下载:https://pan.baidu.com/s/1pMVzDI0s3pCLcNyYFJrvLg?pwd=fct2(提取码:fct2)














暂无评论内容