5分钟上手bilibili-downloader:B站视频下载工具,大会员4K与充电视频一次拿下
【免费下载链接】bilibili-downloaderB站视频下载,支持下载大会员清晰度4K,持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader
你是不是也遇到过这样的场景:刷到一门特别想反复学的课程,结果右下角挂着"大会员专享4K";或者给某位UP主充了电,专属内容却只能在App里在线看,想存进硬盘毫无办法?今天要聊的 bilibili-downloader 正是为这些场景而生的开源B站视频下载工具,支持大会员4K清晰度、充电视频保存、多P分集和批量下载,装好依赖、贴个Cookie就能开工,全程不过五分钟。
一张对照表看懂:bilibili-downloader能帮你解决哪些糟心事
先别急着动手,我们先说清楚这个工具到底能干什么。它的核心逻辑很朴素:把你"想存但存不了"的B站视频,变成"填个链接就能下"。下面是它帮你摆脱的几类典型烦恼:
| 你遇到的糟心事 | 用 bilibili-downloader 后 |
|---|---|
| 在线解析站不认大会员,只给480P模糊画质 | 配置里贴上账号Cookie,自动取你拥有的最高清晰度,最高支持4K |
| 充电专属视频只能在线看,找不到下载按钮 | 已充电的专属内容可离线收藏,付费看得见,也能存得下 |
| 合集、连载几十个分P,手动一个一个存 | 自动识别分P,也可用链接参数指定下载某一集 |
| 想囤整个系列,却要全程盯着屏幕逐条下载 | 把整串链接一次性贴进列表,批量排队自动下载 |
除此之外,它还有几个让人舒服的小细节:下载时实时刷新进度条,跑完自动合并音视频、清理临时文件,硬盘不会被垃圾文件悄悄占满。功能列表和已知限制的完整说明都在项目 README 里,随时可以对照查阅。
动手前的准备清单:四样东西,缺一不可
正式开始之前,先花一分钟把下面四件事备齐。每一项我都标了"为什么需要它",让你知其所以然:
- Python 3.8 或更高版本:这个工具是用 Python 写的,所有下载逻辑都跑在它上面,版本低于 3.8 会直接报错。
- 项目代码:终端里执行
git clone https://gitcode.com/gh_mirrors/bil/bilibili-downloader拉下来,然后进入目录。 - 四个依赖库:运行
pip install -r requirements.txt一次性装好。其中 httpx 负责发网络请求、beautifulsoup4 负责解析页面结构、moviepy 负责把音视频合二为一、tqdm 负责画出你看到的进度条。 - B站账号的 Cookie:这是B站识别你身份的"通行证",没有它,程序就只能以游客身份请求,拿不到4K和充电内容的访问权。
最后这一项是最关键的,后面专门用一步来教你怎么取。
主流程实操:从拿到Cookie到下载出第一条4K视频
整个流程就三步:拿Cookie、填链接、跑程序。下面按真实任务推进,照着做就行。
第1步:复制B站Cookie,贴进 config.py
Cookie 获取方式不复杂,全程两分钟:
- 用浏览器登录你的B站账号;
- 打开任意视频页,按 F12 打开开发者工具;
- 切到"网络(Network)"标签,按 Ctrl+R 刷新页面;
- 点列表里的第一个请求,在"请求头"里找到 Cookie 字段;
- 把整串 Cookie 复制下来,打开项目里的 config.py,替换
COOKIE那一行引号里的内容。
这里有个必须提醒的细节:Cookie 里的 SESSDATA 大约一个月就会失效,到时候按同样方法重新复制一次替换进去即可。建议在手机日历里设个每月提醒,免得下载到一半才发现"身份过期"。
第2步:按场景填写 URL 列表
继续在 config.py 里,找到URL列表,把链接按需求填进去。不同使用场景怎么填,直接对着这张表抄:
| 想下载的内容 | 前提条件 | config.py 里怎么填 |
|---|---|---|
| 普通视频 | 无 | 直接粘贴视频页链接 |
| 大会员4K视频 | 已开通大会员 + 已填Cookie | 粘贴链接即可,自动取最高清晰度 |
| 多P视频的某一集 | 无 | 链接末尾加?p=2指定第2集 |
| 充电专属内容 | 已充电 + 已填Cookie | 粘贴链接即可 |
如果你想一次批量下载整个系列,就把所有链接按顺序都放进URL列表,比如这样:
URL = [ 'https://www.bilibili.com/video/BV1xxxxxxx/', 'https://www.bilibili.com/video/BV1xxxxxxx/?p=2', 'https://www.bilibili.com/video/BV1xxxxxxx/?p=3', ]顺带说一个冷知识:如果链接里?p=2前面没有斜杠,程序会自动帮你把 URL 规范化为标准格式,避免重定向导致清晰度掉到480P——这个处理逻辑在strategy/bilibili_executor.py的 URL 规范化代码里,有兴趣可以翻源码看看。
第3步:运行 main.py,等视频落盘
填好之后,在项目目录执行:
python main.py程序会先打印本次下载配置(待下载数量、输出目录),然后逐条处理链接。每个视频会同时并发拉取画面和声音,终端里的进度条实时刷新,下载完自动合并、清理临时文件,最后汇总一份下载摘要,告诉你成功几个、失败几个、总共用时多久。视频默认存放在项目的 output 目录。
跑完看到终端里出现"✅ 成功下载 N 个视频",你的第一条本地视频就正式入库了。
进阶技巧合集:几个让体验更顺手的小操作
下面这几条都是高频实用的小技巧,每条都可以直接照做:
- 批量囤课建课程库:把整个系列的视频链接按顺序排进 URL 列表,一次跑完,适合在考前或假期集中把课程下载下来,之后随时离线复习。
- 换个存放位置:想存进外接硬盘或NAS?改 config.py 里的
OUTPUT_PATH即可;TEMP_PATH是临时文件目录,程序每次跑完都会自动清理,不用你操心。 - 下载失败自动留档:如果某个视频没下成功,程序会把失败的链接写进项目里的 failed_urls.txt,下次想重试直接复制回去就行,不用重新找链接。
- 番剧和电影尝鲜:目前番剧/纪录片支持还在完善中,部分内容需要中国大陆IP才能访问。想试的话可以在 URL 里加番剧页链接,但先别抱太高预期,普通视频和充电视频才是它的主战场。
自查排障:四个高频问题的快速解法
- 下载速度很慢怎么办?4K文件体积大是正常的,建议在网络空闲时段(比如深夜)再跑,同时保证网络稳定,有线优先。程序本身支持断点续传,中途断了重新运行会接着下。
- 提示身份过期、下载失败怎么办?大概率是 Cookie 失效了,按第1步的方法重新获取并替换即可。SESSDATA 一个月一换,建议固定时间更新。
- 下载的视频打不开怎么办?先确认播放器是否支持常见视频格式,推荐 VLC、PotPlayer 这类通用播放器;也可以删掉重下一次,排除中断导致的文件损坏。
- 提示"该视频受地区限制"怎么办?这是部分番剧/电影的内容限制,需要用中国大陆的代理或网络环境后再试,普通视频不受此影响。
下载之前,请先想一件事
工具让"存下来"变得毫无门槛,但请记住:每一个视频背后都是创作者的心血。bilibili-downloader 适合用来保存你真正需要的学习资料、收藏钟爱的作品、备份自己的内容,也请只把它们留在个人设备上供自己学习与收藏,不要用于传播或任何商业用途。支持原创,从尊重每一位UP主开始。
如果这篇文章帮到了你,不妨现在就打开终端,把git clone那行命令跑起来——你离拥有自己的B站离线资料库,只差这五分钟。
【免费下载链接】bilibili-downloaderB站视频下载,支持下载大会员清晰度4K,持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考