forked from nilaoda/BBDown
-
Notifications
You must be signed in to change notification settings - Fork 18
Authentication
aliveranme edited this page Aug 18, 2026
·
2 revisions
本文档介绍如何在 BBDown 中配置 B 站账号凭据,以解锁 1080P 高码率、4K、8K、杜比视界/全景声、付费课程、UP 主全量稿件以及稍后再看列表等特权内容。
未登录(游客身份)时,B 站接口通常存在以下限制:
- 画质限制:最高仅能获取 480P 或普通 720P 画质。
- 内容限制:大会员专享番剧、杜比音视频、Hi-Res 音轨、充电专属视频无法解析。
- 功能限制:无法批量拉取 UP 主全部投稿、无法访问个人「稍后再看」列表。
在终端执行以下命令:
BBDown login终端会渲染出二维码(支持控制台字符渲染):
- 打开手机哔哩哔哩 APP 扫描终端中的二维码。
- 在手机上点击「确认登录」。
- 登录成功后,凭据将自动保存至程序同目录下的
BBDown.data文件中。 - 后续执行
BBDown <URL>时会自动读取此凭据,无需重复登录或手动传参。
如果需要经常使用 -t(TV 接口)下载无水印源或电视端专享资源:
BBDown logintv- 使用手机 B 站 APP 扫码并确认授权。
- 凭据将保存在同目录下的
BBDownTV.data文件中。 - 执行
BBDown -t <URL>时将自动加载该凭据。
Linux/macOS 平台提示: 如果在非 Windows 系统上执行
login报The type initializer for 'Gdip' threw an exception,是因为缺少libgdiplus库。可安装libgdiplus或通过手动传入 Cookie 解决。
B 站官方 APP 接口(-a / --use-app-api)需要 access_token 进行鉴权:
根据社区经验,TV 登录生成的 access_token 可以直接用于 APP 接口:
- 直接将
BBDownTV.data文件复制一份并重命名为BBDownApp.data。 - 程序执行
BBDown -a <URL>时便会自动加载该文件中的 token。
在手机 APP 或模拟器上抓包(如 HTTP Toolkit / Charles / Fiddler):
- 观察发往 B 站 API 的请求 Header。
- 找到键名为
authorization的项,其值形如identify_v1 5227************1。 - 其中的字符串
5227************1即为access_token。 - 运行时通过
--access-token传入:BBDown -a --access-token "5227************1" "https://www.bilibili.com/video/BV1qt4y1X7TW"
如果你不想在本地保存 .data 文件,或者在自动化脚本 / CI 中运行,可直接通过 -c 参数注入 Cookie:
BBDown -c "SESSDATA=xxxxxx; bili_jct=xxxxxx; DedeUserID=xxxxxx" "https://www.bilibili.com/video/BV1qt4y1X7TW"提取提示:在浏览器登录 B 站,按
F12打开开发者工具,在「网络 (Network)」或「应用 (Application) -> Cookies」中复制SESSDATA即可(通常只需要SESSDATA即可完成大会员身份鉴权)。
对于 UP 主发布的充电专属视频:
-
已充电账号:登录该账号后直接运行
BBDown <URL>,即可正常下载完整超清视频。 -
未充电账号 / 游客:B 站接口在未授权时不会返回报错,而是直接下发几分钟的试看片段(时长字段却声称完整长度)。
- 默认防护:BBDown 会在下载前自动检测到该情况并主动中止退出,避免用户下载到残缺损坏文件。
-
允许试看:如果确实需要下载该几分钟的试看片段,可显式追加
--allow-preview参数。下载的文件名将带有[试看]标识。
| 文件名 | 对应模式 | 作用 |
|---|---|---|
BBDown.data |
WEB 网页端 | 保存网页扫码获得的 Cookie 与 Session 信息 |
BBDownTV.data |
TV 小电视端 | 保存 TV 扫码获得的 Access Token 与 Refresh Token |
BBDownApp.data |
APP 移动端 | 保存 APP 接口使用的 Access Token |
BBDown Wiki · 由 aliveranme/BBDown 维护 · 基于 MIT 协议开源
- 🏠 首页 (Home)
- 🚀 快速上手 (Getting Started)
- ⚙️ 全命令行参数详解 (CLI Reference)
- 🔑 账号登录与鉴权 (Authentication)
- 📝 配置文件与命名规则 (Configuration)
- 🛠️ 子命令使用指南 (Subcommands)
- 💬 弹幕与评论区抓取 (Danmaku & Comments)
- 📦 批量下载与自动化 (Batch & Automation)
- 🔓 Widevine DRM 原生解密 (DRM Decryption)
- 🌐 API 服务器与 Docker 部署 (API & Docker)
- 🏗️ 内部架构与设计原理 (Architecture)
- 💻 开发者指南与编译构建 (Developer Guide)
- ❓ 常见问题与故障排查 (FAQ)