BiliDownload:把B站视频无水印下载到本地的开源Java神器

发布时间:2026/8/15 13:49:11
BiliDownload:把B站视频无水印下载到本地的开源Java神器 BiliDownload把B站视频无水印下载到本地的开源Java神器【免费下载链接】BiliDownloadB站视频下载工具项目地址: https://gitcode.com/gh_mirrors/bil/BiliDownload某个加班的深夜我把收藏夹里追了两年的算法系列课翻出来想整理成离线课件却发现其中两集已经显示已失效。那一刻我才意识到存在B站服务器上的东西从来不真正属于你。后来我找到了 BiliDownload——一款通过调用 B站 WEB 端与 TV 端 API 实现的B站视频下载工具。它能把收藏变成拥有支持从流畅360P到超清4K的全画质选择优先抓取无水印视频源还能自动把分离的视频和音频合并成完整MP4。今天我就带你从零把它跑起来。初见项目一个老老实实做下载的Java工具BiliDownload 是一个开源、跨平台的B站视频下载工具用 Java 写成Windows、macOS、Linux 通吃。它不依赖浏览器插件也不需要在网页上折腾一个 jar 包加上命令行就能干活。它的定位很纯粹适合普通观众保存收藏夹、适合教育工作者批量备份网课、适合剪辑师和创作者收集无水印素材。核心功能一句话概括输入 AV/BV 号选画质拿到无水印的完整视频。功能速览这五个能力最常用无水印优先程序同时访问 TV 端与 WEB 端 API只要 TV 端能给出无水印源靠accept_watermark参数判断清晰度列表里就会带无水印标记并排在前面。对做二创的人来说这一步省去了去水印的麻烦。扫码即登录支持 WEB 端二维码、TV 端二维码和直接粘贴 SESSDATA 三种登录方式。登录一次后凭据写进config.yml下次开机直接跳过。全画质可选360P、480P、720P、1080P、4K 都能选1080P 需要账号是大会员列表里写得很清楚。多P分集下载遇到一个视频几十个分P程序会把每个分P的 CID、时长、标题列出来让你逐个挑。多线程加速文件超过 8MB 自动启用多线程分段下载线程数可自定义作者实测最高能到 23MB/s 左右。它是怎么做到的把拆快递讲明白B站的视频之所以难下载是因为它把一集视频拆成了三样东西视频流、音频流、一堆签名参数。BiliDownload 做的事就像帮你在快递柜前按流程取件解析包裹输入 BV 号后程序调用api.bilibili.com/x/web-interface/view拿到标题、分P、播放量等元数据再向 playurl 接口要清晰度列表和真实的 m4s 下载地址。签名参数由SignUtil负责生成伪装浏览器的身份由UserAgentManager提供。分块取件下载时Downloader把整个文件按字节切成 N 段每个线程用 HTTP 的Range头声明我要 0~8MB 这段然后并发写入本地文件。多线程的意义在于单个连接的带宽上限被绕开了。最后拼装视频流和音频流是分开下的合并时调用 FFmpeg 把两者无转码地封装进同一个 MP4速度很快不会二次损失画质。整个流程在Main.java里按步骤串起来每步都有文字提示跟着走就行。动手实操半小时跑通第一次下载第一步准备环境。需要 JDK 8 或更高版本要合并音视频再装一个 FFmpegWindows 用户注意把ffmpeg.exe的路径记住。第二步获取程序。可以编译源码也可以直接下载编译好的 jargit clone https://gitcode.com/gh_mirrors/bil/BiliDownload cd BiliDownload mvn clean package编译完成后jar 出现在target目录下名为bili-download-1.3.6-jar-with-dependencies.jar。第三步启动并走完问答流程java -jar target/bili-download-1.3.6-jar-with-dependencies.jar启动后按提示依次输入AV/BV 号记得带av或BV前缀→ 登录方式编号 → 分P编号 → 清晰度编号 → 保存路径 → 下载选项1视频音频合并、2仅视频、3仅音频→ FFmpeg 路径 → 线程数。每一步都有中文提示即便选错程序也会自动帮你修正为相邻的合法值。小贴士如果只想下载某个直链文件用direct模式一行搞定java -jar bili-download-1.3.6-jar-with-dependencies.jar direct 视频直链URL 保存路径.mp4程序会在下载完成后自动退出非常适合脚本调用。加一个debug参数还能看到每次请求的 URL 和 UA排查问题很有用。真实应用场景三个人的使用故事老师批量备份网课刘老师要在暑假前把 30 集编程课离线化。他把每一步的回答提前写进工作目录下的Input.txt每行一个输入程序检测到该文件就会自动切换输入源再用脚本循环跑完所有 BV 号一晚全部搞定。剪辑师收集无水印素材B站部分 UP 主的视频在 WEB 端是带水印的但 TV 端 API 能给出无水印源。小陈用 TV 端二维码登录后选择标记无水印的 4K 清晰度直接拿到纯净素材省掉了后期抠水印的工序。学生党只下音频备考英语精听的同学不想下载整段视频选仅音频程序直接下载.aac音频文件几百 MB 的视频只剩几 MB塞进手机随走随听。避坑指南新手最容易踩的四个坑下载中断、进度卡住→ 网络波动时程序检测到 10 秒内平均速度为 0 会自动重试。如果反复中断把线程数调小比如 3~8减少并发请求的压力。提示合并失败→ 大概率是 FFmpeg 没装或者路径填错。Linux/macOS 下可执行文件名没有.exe后缀程序已做了适配记得填ffmpeg所在目录即可。合并失败时检查磁盘剩余空间是否大于视频加音频的总和。选不到 1080P 以上画质→ 高清晰度需要账号权限。请先登录大会员账号WEB 端登录解锁 WEB 端高画质TV 端登录解锁 TV 端高画质双端都登录最稳妥。线程数报 416 错误→ 这是请求范围超出文件长度导致的。把线程数调回 8 或更少并在保存时选择保存线程数以后就不需要重复设置了。进阶玩法让下载更省心玩法一把常规选择写进config.yml。程序会自动把 SESSDATA、保存路径、FFmpeg 路径、线程数记进工作目录下的config.yml下次运行全部免输入。手动编辑它还能批量更换保存目录。另外路径以~开头会被自动替换为用户主目录写脚本时方便多了。玩法二用Input.txt实现无人值守。所有交互输入都能预先写入Input.txt再配合direct模式和系统定时任务你可以搭一个每天晚上自动下载指定 BV 号的小流水线全程零值守。玩法三看debug模式日志。想研究 B站 API 的同学加debug参数运行程序会输出每次访问的 URL、UA、各线程的下载区间配合源码里HttpManager、SignUtil的注释是不错的逆向学习材料。总结与下一步BiliDownload 没有花哨的界面它更像一把趁手的瑞士军刀——装上 JDK 和 FFmpeg输入 BV 号就能把B站视频老老实实下载到本地无水印、可挑画质、能断点重试。别嫌它命令行不够好看这正是它稳定可靠的原因。现在就动手吧clone 仓库 →mvn clean package→ 随便找个 BV 号跑一次完整流程再把常用的登录状态和路径存进config.yml。半小时后你会拥有自己的离线视频库。技术工具的价值在于如何使用它。请尊重创作者下载的视频仅用于个人学习与研究让技术真正为创造价值。【免费下载链接】BiliDownloadB站视频下载工具项目地址: https://gitcode.com/gh_mirrors/bil/BiliDownload创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻