B站视频下载教程:10分钟把大会员4K视频存进硬盘
B站视频下载教程10分钟把大会员4K视频存进硬盘【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader开源项目 bilibili-downloader 是一个纯本地的 B 站视频下载工具带着你账号的 Cookie 向官方接口要流地址把大会员 4K 和充电专属视频拉下来合成能直接播放的 MP4 存进硬盘。不经过任何第三方解析站配置一次长期复用。想存大会员4K视频为什么处处碰壁你刷到一集 4K 教程右键另存为拿到的只是一堆加密分片播放器根本打不开。换在线解析网站画质被压到 480P还夹着广告和付费墙折腾半天文件没进硬盘。办了大会员、充了电内容明明能看却怎么也变不成离线资料。这就是本文要解决的场景把网页里能看的内容变成断网也能放的本地文件。一次配齐B站高清保存要解决的四个问题工具把下载一个视频拆开的每一步都替你接管了对号入座一下你遇到的问题工具怎么解决大会员4K在网页端存不下来携带 Cookie 请求官方接口自动选当前账号可用的最高清晰度充电专属视频没有下载入口用登录态通过权限校验直连拉取完整文件长系列几十集逐个点太累URL 列表批量排队分P 参数一次写齐下到一半断网进度全丢Range 请求断点续传重跑时接着已下载的部分继续网络抖动把任务搞挂每个文件最多自动重试 5 次、间隔 5 秒失败链接单独导出成文件⚠️ 番剧/电影bangumi 接口目前仍处于待测试状态且需要中国大陆 IP 才能访问本文以普通视频和充电视频为主线展开。从零跑通10分钟完成B站视频下载配置装好 B站视频下载工具的全部依赖确保系统里有 Python 3.8 及以上版本然后执行下面三条命令git clone https://gitcode.com/gh_mirrors/bil/bilibili-downloader cd bilibili-downloader pip install -r requirements.txt此时你会看到终端里依次滚过 httpx、beautifulsoup4、moviepy、tqdm 等依赖包的安装进度全部显示 Successfully installed 即装完。把 Cookie 填对高清保存的前提工具要靠你的账号身份去要高清流所以得先拿到登录后的 Cookie。获取路径用浏览器登录 B 站 → 打开任一视频页 → 按F12进入开发者工具的网络面板 →Ctrl R刷新 → 点开第一条请求在请求头里复制整段cookie的值。然后打开项目根目录的 config.py把其中COOKIE ...的值整体替换成你复制的内容# config.py # ... COOKIE 把浏览器里复制出来的整段Cookie原样粘贴到这里⚠️ Cookie 里的 SESSDATA 大约 30 天过期。建议在日历里设个每月提醒到期按上面四步重取一次即可已经下载的文件不受影响。写入链接普通、分P、充电视频都支持还是在 config.py把想存的视频填进URL列表三种写法直接照抄# config.py # ... URL [ # 普通视频 https://www.bilibili.com/video/BV1M4411c7P4, # 分P视频?p 指定第几集 https://www.bilibili.com/video/BV1TnsZzHEcz/?p2, # 充电专属视频 https://www.bilibili.com/video/BV1W1wKeWEVe, ]链接后面跟的?vd_source...一类追踪参数不用保留删干净更不容易出错。运行B站视频下载命令在项目根目录执行python main.py。此时你会先看到一段下载配置待下载数量、最多同时下载 2 个视频的并发说明、输出目录随后逐条进入下载。去 output 目录验收高清成片下载走完后去项目下的output/文件夹里找 MP4。此时你会看到文件名和视频标题一致分P 视频会带_P1、_P2这样的后缀丢进 VLC 或 PotPlayer 就能直接播放。拆开 strategy 目录三个设计让批量下载又稳又快按链接自动认类型各走各的接口遇到的问题普通视频和番剧在 B 站是两套完全不同的接口写死一套取数逻辑必然顾此失彼。怎么做的执行入口先按 URL 里有没有/bangumi/play/判断类别再分派给对应的策略对象——普通视频走DefaultStrategy番剧走BangumiStrategy主流程完全不感知差异。带来的效果将来要支持新类型的视频只要新增一个策略类挂进映射表下载主流程一行都不用动。音画两条流并发拉高清带宽不闲置遇到的问题B 站高清视频是 DASH 格式画面和声音是两条独立流串行下载等于浪费一半带宽。怎么做的执行器用asyncio.gather同时发起视频和音频两个下载任务多个视频之间再用信号量限流默认同时 2 个避免请求过猛。遇到充电视频那种音画已合并的 durl 格式则退化为单文件直下直接跳过合并环节。带来的效果单集大文件的等待时间大致按两条流中较慢的那条计批量任务整体提速明显。断点续传加自动重试网络抖动不白下遇到的问题几个 GB 的大文件下到 90% 断一次网从头再来是最常见的崩溃点。怎么做的每次请求都带上Range: bytes已下载字节数-请求头让服务端从断点继续写中途遇到连接类报错就等 5 秒自动重试单文件最多 5 次而不是直接放弃。带来的效果中断后重跑同一条链接不会重下已落盘的部分偶发的网络抖动基本无感。终端实录一次B站视频下载的四段输出一次典型运行终端会依次经过四个节点心里先有底任务概览打印待下载视频数量、并发模式每个视频内部音画并发、输出目录逐条进度每条视频先打标题和清晰度如高清 1080P音频、视频各占一条带实时速度的进度条合并合成两条流走完后提示视频合成完成。这里优先调用系统里的 ffmpeg 做复制流合并几乎不耗时没装 ffmpeg 会自动退回 moviepy 完成合成durl 格式则直接提示视频处理完成完成摘要成功/失败条数、总耗时、每条视频的标题与清晰度、保存位置。有失败时失败链接会同步写进根目录的failed_urls.txt方便复制回 config.py 重跑。进阶组合B站批量下载三种用法分P列表一次下完整季URL [ https://www.bilibili.com/video/BV1xxxxx/?p1, https://www.bilibili.com/video/BV1xxxxx/?p2, https://www.bilibili.com/video/BV1xxxxx/?p3, # ... 每集一行跑完即整套入库 ]效果工具按列表顺序排队下载文件名自动带分P编号互不覆盖一次配置跑完就是整套资源库。充电专属视频直接备份URL [ https://www.bilibili.com/video/BV1xxxxx, # 充电专属视频直接填 # ... ]效果这类视频走 durl 格式单文件直下后直接移入 output 目录省掉合并环节。改两行配置成品送进NAS# config.py TEMP_PATH /your/nas/mount/bili/temp OUTPUT_PATH /your/nas/mount/bili/output效果把临时目录和成品目录指到 NAS 或外接硬盘的挂载点下载完自动归档进你的影音库。排障速查四个高频问题对号入座现象大概率原因处理动作只有 480P 或提示权限不足Cookie 过期或粘贴不完整按填 Cookie一步重取并整体替换报未找到视频数据链接不是普通视频或视频已下架换成 /video/BV… 普通链接重试番剧、电影下不动该能力待测试且需大陆 IP先用普通视频链接等后续版本更新中途反复报错重试网络波动换低峰期运行失败链接在 failed_urls.txt 里重跑顺手说一嘴4K 单集动辄几个 GB批量开跑前先看一眼磁盘剩余空间。谁适合用它边界在哪它最适合三类人想把大会员 4K 教程变成本地资料的学习者、要整季备份系列作品的深度用户以及愿意花十分钟配置换长期省事的普通观众。它做的不是破解而是把你本来就有权观看的内容存成离线文件请仅用于个人备份尊重创作者的劳动成果。git clone https://gitcode.com/gh_mirrors/bil/bilibili-downloader【免费下载链接】bilibili-downloaderB站视频下载支持下载大会员清晰度4K持续更新中项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考