ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

B站视频下载指南:用 BiliDownload 把无水印高清视频存到本地

2026/8/21 21:26:03 拓冰建站 浏览量
B站视频下载指南:用 BiliDownload 把无水印高清视频存到本地 B站视频下载指南用 BiliDownload 把无水印高清视频存到本地【免费下载链接】BiliDownloadB站视频下载工具项目地址: https://gitcode.com/gh_mirrors/bil/BiliDownload晚上十一点你刚给笔记本灌满电。明天要坐十几个小时的飞机你打算把收藏夹里那支 40 分钟的制作教程存进硬盘路上没网也能看。可点进页面才发现之前用浏览器插件扒下来的直链早过期了换个工具下载成片右上角还挂着一个半透明的台标剪进去特别碍眼。如果你也卡在想把 B站视频下载下来、还要干净一点这件事上那今天的主角BiliDownload值得你花十分钟。它是一个用 Java 写的开源 B站视频下载工具纯命令行、一个 jar 包跑完整个流程还能在多数清晰度上给你无水印的片源。先说清楚为什么老办法不好使你可能试过这几条路结果都不太妙浏览器 F12 扒直链B站的视频直链是带签名和有效期的过一会儿就 403根本没法存着备用随手找的第三方下载站要么分辨率锁在 360P要么合并好的文件自带水印要么 B站一更新接口它就阵亡手动拼请求要自己处理签名、cookie、视频轨和音频轨分离劝退程度拉满。问题不在你在于这些办法都只盯住了 B站的网页端这一扇门。而 B站的视频流其实还有另一条走电视端的路很多干净片源就在那边——这正是 BiliDownload 最核心的切入点。它到底是什么一句话说清BiliDownload 是一个调用 B站 WEB 端与 TV 端两套 API 的纯 Java 下载器覆盖 360P 到超清 4K、60 帧版本文件超过 8MB 时自动多线程分块下载。协议MIT随便改、随便用现状当前版本1.3.6代码全部在src/main/java/me/naptie/bilidownload/下总共一千多行读得完仓库clone 用这个地址git clone https://gitcode.com/gh_mirrors/bil/BiliDownload第一次就跑起来三条命令前置条件只有两条装了JDK 8 或更高版本java -version确认一下想用视频音频合并功能的话装一个 FFmpeg没有也不影响下载只是选不了合并项。然后三条命令cd BiliDownload mvn clean package java -jar target/bili-download-1.3.6-jar-with-dependencies.jar启动后它会先让你输入一个AV 号或 BV 号注意要带av或BV前缀。接着跟着提示走选登录方式三种下文细说、选分 P、选清晰度、选保存路径然后看进度条。第一次跑通后SESSDATA、保存路径、FFmpeg 路径都会写进工作目录的config.yml下次启动大部分问题不用重答。下面这张就是仓库里留存的真实运行截图——输入 BV 号之后稿件的标题、分 P、清晰度列表会逐条列出来等你挑顺带一提第一次跑之前如果磁盘空间不够程序会直接提示磁盘空间不足不会下出个半截文件这点做得比较稳。四个让你留下来的理由① 无水印片源优先摆出来。别的工具拿到什么算什么它会把 TV 端能给到的无水印版本排到清晰度列表最前面并打上无水印标记。对要剪片子的人来说画面干净意味着后期不用想着裁掉角标。② 三种登录方式总能走通一种。WEB 端二维码、TV 端二维码、直接粘 SESSDATA。扫码最省事二维码窗口弹不出来或者你是在服务器上跑就粘 cookie 里的 SESSDATA浏览器 F12 → Application → Cookies 里复制。想双端都登录登录一端的流程走完后再登另一端就行。③ 清晰度从 360P 一路到 4K还有 60 帧。流畅、480P、720P、1080P、4K 逐档可选。注意一个硬门槛1080P 及以上需要大会员或电视大会员它获取清晰度时会自动判断你能看什么不会给你列一堆选不了的。④ 多线程分块下载速度是真快。文件超过 8MB 就自动切段、多线程各取一段。官方 changelog 里记着32 线程下载时最高干到过23MB/s。几百 MB 的 4K 视频这个速度差距是实打实的分钟级。拆开看无水印没那么神秘你可能会想同一个视频为什么有的流有水印、有的没有答案藏在两套 API 返回的元数据里。B站把 WEB 端播放器和 TV 端云视听小电视那套的视频流接口分开。TV 端的响应里带一个accept_watermark数组逐档标记这一档流是否含水。BiliDownload 的做法很直白两个接口都问一遍谁返回无水印就把谁排前面。这段判断逻辑就在Main.java的summarize()方法里核心就一句——if (!videoTV.getJSONArray(accept_watermark).getBoolean(i)) // 该档TV端流不含水印优先展示下载加速的原理更朴素。视频轨、音频轨是分开的两条流下完再由 FFmpeg 拼成完整 MP4-vcodec copy -acodec copy纯复制不重编码所以合并很快。而多线程分片的核心就是objects/Downloader.java里的这行threadLen (totalLen THREAD_AMOUNT - 1) / THREAD_AMOUNT; // 每个线程负责多长一段每个线程拿着自己那段的Range: bytesstart-end去请求用RandomAccessFile直接往对应偏移写。就这么点东西撑起了 23MB/s 的下载速度。三类人的最短路径想省心的新手启动程序 → 输入 BV 号 → 登录选WEB 端二维码登录手机扫码确认 → 清晰度挑 1080P → 下载选项选视频音频合并需要 FFmpeg → 路径回车用上次记住的。一个 MP4 就躺在你的文件夹里了全程不用查任何文档。要无水印素材的创作者登录选TV 端二维码无水印源优先来自 TV 端 API清晰度选列表里带无水印标记的最高一档下载选项仍是视频音频。拿到的就是能直接进时间线的干净素材。要批量跑的人程序所有交互输入都可以预先写进工作目录的Input.txt每行一条回答启动时检测到这个文件会自动切换输入源安静地跑完。把 BV 号、选项一路写好后配 shell 循环几十个分 P 的系列课程挂到后台半夜起来就是下好的。把效率榨出来改两个文件、两个参数config.yml支持直接手改几个真正好用的键位sess-data: 你的SESSDATA save-path: ~/Videos/Bilibili # 路径以 ~ 开头会自动解析为用户主目录1.3.6 新增 ffmpeg-path: /usr/local/bin/ffmpeg thread-amount: 16 # 多线程下载线程数两个更省心的启动参数# debug 模式打印每次请求的 URL 与浏览器标识UA排查登录异常很管用 java -jar target/bili-download-1.3.6-jar-with-dependencies.jar debug # direct 模式跳过全部交互直接下载指定 URL 到指定路径适合定时任务 java -jar target/bili-download-1.3.6-jar-with-dependencies.jar direct 视频直链 保存路径.mp4另外提一句任何一步输入*exit都能干净退出不必强杀进程。翻车了怎么办四个高频问题现象进度条卡住、速度归零甚至报 416 错误。原因线程数开太大越界的 Range 请求被服务器拒绝。 对策把thread-amount调小网络不稳时降到 8 以下甚至单线程带宽好的环境 16~32 基本能吃满。现象下载成功但合并失败或者只得到一堆分不开的片段。原因FFmpeg 没装或路径不对。 对策先ffmpeg -version确认能跑再核对config.yml里的ffmpeg-path暂时不想合并的话FFmpeg 路径那一步输入#即可跳过。另外 README 里明说了一个已知 bug合并到 4GB 左右会停止写入超大文件先留个心眼。现象提示登录失败、解析不出稿件或清晰度列表空得反常。原因登录态过期、B站接口变动、或清晰度超出账号权限。 对策先重新扫码登录一次1080P 及以上确认大会员身份。用debug模式重启能看到每一步请求的 URL 和 UA基本能定位卡在哪一环。现象想要无水印列表里却没有无水印标记。原因README 里承认了获取无水印源时有时会失败这个已知问题另外带标记的档位只来自 TV 端没标记不代表一定有水印。 对策重新登录 TV 端再试一次仍不行就退回 WEB 端档位先下下来后续版本再跟进。这项目值不值得信先看结构Main.java串起整条交互流程objects/Downloader.java管多线程下载utils/下LoginManager管登录、HttpManager管请求、ConfigManager管配置、SignUtil做 TV 端签名、QRCodeUtil画二维码。一千多行代码、职责划分清楚新人接手或者加功能都有明确的落点。更加分的是它的坦诚。README 里有一整节[BUG]清单某些控制台刷新会把速度信息盖掉、瞬时速度偶尔显示为 0、FFmpeg 合并 4GB 停止写入……作者一条条列出来不藏着。连修复记录都留着现场——1.3.2 版修掉一个除以零异常时作者直接把当时的报错截图放进了 changelogMIT 协议意味着你可以放心改造作者也明说这是个不排除随时删档的兴趣项目——想用的话趁现在。把这份便利用在正途回到开头那个飞机前的晚上现在你需要的不过是三条命令和一次扫码。BiliDownload 替你干掉了抓包、签名、水印这些脏活让你把存下来这件小事做得体面。但请把它用在正途上下载自己购买或有授权的视频用于个人学习、离线观看和创作参考。UP主花时间剪的每一帧都值得一句谢谢。愿你的收藏夹以后少一次已失效。项目地址clone 使用git clone https://gitcode.com/gh_mirrors/bil/BiliDownload cd BiliDownload mvn clean package java -jar target/bili-download-1.3.6-jar-with-dependencies.jar【免费下载链接】BiliDownloadB站视频下载工具项目地址: https://gitcode.com/gh_mirrors/bil/BiliDownload创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考