ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

把 B 站视频下载从“碰运气“变成“回车就行“:我的完整实操记录

把 B 站视频下载从“碰运气“变成“回车就行“:我的完整实操记录 把 B 站视频下载从碰运气变成回车就行我的完整实操记录【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader收藏夹里躺着 400 多个 B 站视频真正离线看完的不到 5 个——这是过去两年我的常态。B 站视频下载这件事我试过网页版下载器三天两头失效还差点被捆绑安装全家桶也试过浏览器插件画质被锁死在 480P。直到朋友甩给我一个开源项目 bilibili-downloader说改一行配置就能跑。我将信将疑地装了结果整个下载过程顺利得不像话。这篇就是我完整的使用手记从安装到 4K全程没有写一行业务代码。第一次跑通比装个聊天软件还简单项目到手依赖清单薄得让人意外。它只需要四个库httpx发网络请求、beautifulsoup4解析网页、moviepy合并音视频、tqdm画进度条全部写在requirements.txt里。git clone https://gitcode.com/gh_mirrors/bil/bilibili-downloader cd bilibili-downloader pip install -r requirements.txt python main.py四步走完程序就开始自己干活了。它先打印一份下载配置告诉你待下载几个视频、输出目录在哪然后逐条解析链接、拉取视频信息和音频流、显示实时进度条。我第一次跑的时候甚至没反应过来——从敲下回车到第一个进度条亮起来中间只隔了几秒钟。关键的一步Cookie 配置决定你能下多清晰如果你只下载免费视频上面的步骤已经够用了。但想拿到大会员画质就必须配置 Cookie。这一步是整个工具唯一的门槛但真的不难。用人话解释Cookie 就像是你在 B 站留下的入场券告诉服务器这个账号登录过、有会员权限。工具靠它来请求高清晰度视频流。配置方法浏览器登录 B 站 → 打开任意视频页 → 按 F12 进开发者工具 → 切到网络标签刷新页面 → 点第一个请求在请求头里复制整个 Cookie 字段粘进config.py的COOKIE变量即可。有两件事必须提前知道SESSDATA 大约 30 天过期。这是 Cookie 里的核心凭证过期后下载会悄悄降级甚至失败建议手机设个每月提醒。Cookie 就是你的账号通行证。只用自己的账号、别到处乱发这是基本的安全底线。实战一批量下载 6 个分P一个列表全搞定我第一个拿来练手的是个 6 集的充电专属视频。在config.py的URL列表里每行放一个链接URL [ https://www.bilibili.com/video/BV12gYxz7ESf/, https://www.bilibili.com/video/BV12gYxz7ESf?p2, https://www.bilibili.com/video/BV12gYxz7ESf?p3, # …… 以此类推 ]注意那个?p2它就是分P视频的开关。B 站的多集视频本质是同一个 BV 号下的不同分P加p参数就能精确指定下哪一集。工具会从 URL 里自动提取分P号下载时在文件名上标出_P1、_P2多集之间不会互相覆盖。更贴心的是并发控制。main.py里默认最多同时下载 2 个视频每个视频内部音视频再并发用信号量把请求数量摁在服务器能承受的范围内既不会排队排到天荒地老也不会把人家接口打挂。实战二充电专属视频居然也能下我练手的那个 6 集视频正是我充值支持的一位 UP 主的充电专属内容——这是网页端普通下载工具完全碰不到的东西。工具在strategy/目录里对不同格式分别处理普通视频走 DASH 格式视频和音频分离分别下载再合并充电专属这类特殊内容走 DURL 格式音视频打包在一起直接单文件下载。所以你不需要关心底层是哪种格式把链接丢进去就行。下载完成后main.py会自动打印一张下载摘要成功几个、失败几个、每个视频的最终清晰度、保存位置。如果有失败的链接还会自动写进failed_urls.txt方便你修好配置后原样复制回去重试。实战三4K 画质是怎么来的看models/video.py里的画质映射表就能明白这工具的能力上限画质 ID名称127超高清 8K126杜比视界 4K120超清 4K116高清 1080P60112高清 1080P80高清 1080P64高清 720P32清晰 480P16流畅 360P工具的策略是挑最好的给——解析出视频流列表后直接选第一个质量最高的。能不能真拿到 4K取决于两个前提你的账号有对应权限以及 Cookie 配置正确。很多人抱怨明明开了大会员还是只有 1080P十有八九是 Cookie 过期或者链接格式有问题导致重定向丢了会员状态下面会讲。过来人的提醒这四个坑我替你踩过了坑一链接少了条斜杠画质直接从 4K 掉到 480P。这是作者在代码注释里写明的坑BV号?p2这种写法会被 B 站重定向重定向过程丢失会员状态返回 480P。工具内部有_normalize_url自动把链接规范成BV号/?p2再请求。但如果你从收藏夹复制链接时带了各种vd_source参数建议复制后核对一下格式。坑二没装 ffmpeg合并会慢到怀疑人生。合并音视频时工具会优先调用系统里的ffmpeg秒合并且不重新编码、画质无损没有的话才退回moviepy重新编码速度慢很多。Linux 用户装一下ffmpeg一行命令的事体验天差地别。坑三番剧和电影是半成品。config.py里留了番剧/电影链接的示例strategy/bangumi.py也做了对应解析但 README 里明确标注待测试。而且部分内容有地区限制代码里会直接抛该视频受地区限制的提示。想拿它下整部番剧的建议再等等。坑四下载一半断网了不用担心。下载器支持断点续传——它会先检查本地文件已有多大再用Range请求头从断点继续下最多自动重试 5 次。我半夜下大文件遇到过两次网络抖动进度条都是接着往前走的。适合什么人用不适合什么人用说句实在话这工具不是给所有人准备的。它适合三类人把 B 站当学习资料库的学生党整套网课一键备份、重度内容收藏家想留住 UP 主的作品、经常通勤出差的人提前把视频搬进硬盘地铁上慢慢看。它不适合的是想用免费账号白嫖 4K 的人画质上限由你的账号权限决定、想批量搬运他人版权内容的人。工具本身完全免费开源但请务必遵守 B 站用户协议和版权方的权益——下载只用于个人学习与收藏不要二次传播。创作者靠内容吃饭我们享受便利的同时也该守住这条线。最后总结一下我这几天的体验安装五分钟、配置十分钟、下载全程不用管画质从 360P 到 8K 全覆盖分P、批量、断点续传、自动清理临时文件这些细节都替你想到了。它把能不能下载这个问题简化成了你的账号有没有权限。把链接丢进去回车剩下的交给进度条。如果你也有一抽屉永远没时间看的收藏不妨试一次——说不定从此 B 站视频下载就不再是碰运气的事了。【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表