
B站视频下载终极指南bilibili-downloader 一条命令搞定4K与充电专属视频【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader出差路上信号忽好忽坏教程合集里大会员才能看的4K只能在线过眼瘾给喜欢的UP主充了电专属视频却找不到离线入口。这种看得见、存不下的憋屈正是开源工具bilibili-downloader要解决的问题——它是一款 Python 命令行下载工具核心能力就是 B站视频下载支持大会员4K清晰度与充电专属视频适合所有想建立本地视频库的学习党和普通用户。这篇文章不按安装—配置—使用的流水账来写而是把整个流程拆成三站递进第一站跑通你的第一条4K视频第二站学会批量与分P收藏第三站看懂原理、能自己扩展。每站都能独立落地走完全程你就拥有了完整的B站视频下载能力。第一站 入门从零到第一条4K视频出发前先看清手里的三样东西你只需要准备三样东西一台装了 Python 3.8 的电脑、一个 B 站账号、以及项目代码。代码获取很简单直接克隆到本地git clone https://gitcode.com/gh_mirrors/bil/bilibili-downloader cd bilibili-downloader pip install -r requirements.txt依赖装完先认一认项目里几个关键文件后面全程都要用到config.py你的配置入口Cookie 和下载链接都填在这里main.py启动入口运行下载的总开关strategy/下载策略目录普通视频与番剧各有一套models/数据模型清晰度档位映射就定义在这里。动作一把账号通行证放进 config.py这是新手最容易卡住的一步其实只需 30 秒三步搞定用 Chrome 或 Edge 登录 B 站随便打开一个视频页面按F12打开开发者工具切到网络Network标签按CtrlR刷新页面点击列表中的第一个请求在右侧请求标头里找到Cookie字段整行复制粘贴到config.py里COOKIE ...的引号内保存。下面就是项目里给出的官方示意图跟着红框标注的位置操作即可为什么要这么费劲因为 B 站的高清内容走的是播放即授权机制——视频地址里带了清晰度与账号权限信息直接扒网页里的视频 URL 去下载得到的往往只有 480P。Cookie 就像一张会员通行证项目把 B 站账号 Cookie 注入每一次请求见config.py中的COOKIE变量服务端校验通过后才会返回最高可达的清晰度列表。Cookie 配对了4K 就离你只有一条命令的距离。这里有两个提醒其一Cookie 有保质期其中的SESSDATA大约 30 天失效届时重新走一遍上面的流程替换即可这也是config.py注释里特意标注定期更换的原因其二Cookie 等于账号钥匙只建议在本机使用、不要随意分享避免账号安全风险。动作二把想下的视频链接写进 URL 列表打开config.py在URL列表里按行填入链接即可URL [ # 普通视频 https://www.bilibili.com/video/BV1M4411c7P4, # 分P视频只取第2集 https://www.bilibili.com/video/BV1TnsZzHEcz?p2, # 充电专属视频 https://www.bilibili.com/video/BV12gYxz7ESf, ]三个值得记住的细节分P用?p参数想下第几集就写?p几不写默认第1集链接可以混着填普通视频、分P、充电专属出现在同一个列表里完全没问题程序会自动识别类型、调用不同的下载策略一次列清所有分P比如充电合集有6集就把p1到p6六条链接都填进去一次跑完。动作三跑起来等成片回到项目根目录执行python main.py启动后main.py会先打印一份下载配置清单——待下载数量、并发模式、输出目录一目了然。下载过程中你会看到tqdm进度条实时滚动视频与音频并行下载完成后自动合并。全部跑完还会输出一份摘要成功几个、失败几个、总耗时多少甚至把失败的链接自动导出到failed_urls.txt供你下次重试。下载完成的视频统一落在项目的output目录临时文件会被自动清理目录始终干净整洁。到这里你的第一条 4K 视频已经到手了。第二站 进阶让批量下载替你省时间单个视频跑通之后真正的爽点是批量。这一站解决三个高频场景。分P合集一次抓全的配置技巧教程类UP主最爱做分P合集几十集手动下会疯掉。解法很简单把每集的?p链接都填进URL列表程序会逐个下载并自动编号成标题_P1.mp4、标题_P2.mp4这样的文件不会重名覆盖。三种链接混着填程序自动分流普通视频、充电专属、分P可以同时出现在列表里不用排序也不用标记。程序根据 URL 模式自动判断走哪条路径普通视频走strategy/default.py番剧/电影走strategy/bangumi.py。这套策略模式的设计是项目后续扩展各种下载类型的底座。大文件不怕断断点续传与自动重试下超过1GB的大视频时断网很常见。strategy/bilibili_executor.py里做了两层保险一是利用 HTTP 的Range请求头实现断点续传——文件已存在多少字节就接着从那个位置继续下二是单次失败后自动重试最多5次每次间隔5秒临时性网络抖动基本能自己扛过去。另外还有个防偷偷降级的细节如果你填了BV号?p2这种不带斜杠的链接B站会返回一次重定向可能丢失会员状态、把清晰度打回480P程序会自动把链接补全为带斜杠的形式保住应有的高清晰度。第三站 高手看懂原理就能自己扩展走到这一站你已经能熟练使用。接下来花五分钟弄懂它为什么能行你就能自己改造它。一张清晰度映射表看懂 Cookie 的含金量models/video.py里内置了完整的清晰度档位映射从低到高一共十档清晰度ID档位说明16流畅 360P兜底档32清晰 480P无Cookie时的常见结果64高清 720P普通清晰度74高清 720P60高帧率80高清 1080P默认高清112高清 1080P高码率116高清 1080P60高帧率高清120超清 4K大会员专属126杜比视界 4K大会员专属127超高清 8K顶级档位下载时工具会从返回的流列表里自动选取第一个——也就是质量最高的那一路。所以 Cookie 是否配对直接决定了你是 480P 还是 4K。音画分离与自动合并B站高清视频的流媒体格式是音画分离的视频流和音频流分开传输这也是很多一把梭下载器下完没声音的原因。这个项目会把两条流同时并发下载就像把画面和声音两个快递同时下单再用ffmpeg无损合并机器上没有 ffmpeg 时会自动降级为内置的 moviepy 合并成片就是正常的有声 MP4。策略模式未来扩展的地基strategy/bilibili_strategy.py定义了策略接口default.py和bangumi.py各自实现。程序会根据 URL 自动选择策略。这意味着未来想支持新的内容类型比如直播回放只需要照着写一个新的策略类注册进去主体框架完全不用动。番剧与电影把收藏库再扩大一圈像https://www.bilibili.com/bangumi/play/ss39429这样的番剧/电影链接也可以直接填入URL列表。唯一的硬性条件是番剧电影需要中国大陆 IP——如果你在海外这类内容会因地区限制而下载失败代码里也做了明确的地区限制检测与提示不会默默失败。翻车点速查表症状原因解法一直报无权限或只出480PCookie过期重新获取并替换config.py中的COOKIE视频下载成功却打不开合并环节缺ffmpeg安装 ffmpeg 后重跑合并更快更稳番剧下载失败地区限制确认使用中国大陆IP后再试下载到一半卡住不动网络波动不用管内置重试会自动续上写在最后你的下一步现在你已经掌握了 B站视频下载的完整闭环拿 Cookie → 填进config.py→ 链接写进URL列表 → 跑python main.py→ 去output目录收货。大会员4K、充电专属、分P合集、批量任务这些场景都能独立搞定。如果想更进一步可以试试这些方向用?p参数批量抓取某个UP主整个充电系列的全部集数把output目录接入网盘或 NAS搭建跨设备的个人视频库阅读strategy/下的源码理解策略模式如何工作未来自己扩展新的下载类型。别让这篇指南停在收藏夹里。现在就打开config.py把第一条你想永久保存的视频链接填进去——工具的价值只有在你真正跑通一次之后才会显现。【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考