想下载B站视频这件事,我这两年替身边朋友和自己处理过太多次了。尤其是2026年,平台对视频内容做了不少加密和分片格式调整,以前那种“复制链接粘贴到某某网站就能拿到MP4”的办法基本都废了。我踩了一圈坑之后,发现稳定能用的其实也就两条路:官方App的离线缓存,和一个老牌命令行工具 you-get。这篇把这2个实测可用的方法完整拆开讲,附带我遇到的坑和解决办法。
如果你下载B站视频是为了离线看网课、做二创素材、或者把那种“不知道哪天就被删”的珍贵视频留个底,下面这套思路可以直接照搬。
1. 先聊聊为什么2026年下载B站视频变难了
1.1 需求其实一直没变
先说刚需。很多人觉得B站不就是在线上看吗,为什么非要下载?我自己接触到的场景主要有这么几类:
- 学习用途:把优质教学内容离线缓存,地铁上、信号差的地方也能反复看。
- 素材采集:做视频剪辑、鬼畜、混剪时,需要把原片拷进剪辑软件里裁剪。
- 防失效:部分视频因为版权或者投稿人自己删稿,说没就没。B站又不提供永久收藏到本地的功能,只能自己存。
- 跨设备观看:比如有些老设备的App版本太旧,在线播放卡顿,下载到本地反而流畅。
这些需求放在任何一年都存在,但在2026年,平台把“下载”这件事卡得越来越严了。
1.2 平台限制升级在哪些地方
我观察到的几个变化:
- 视频切片加密:以前手机端缓存下来的文件,直接能找到完整的MP4,现在则是被拆分成音频轨和视频轨,文件名也变成了不带扩展名的
.m4s分片。 - 接口风控更严格:部分第三方网站和解析工具,隔三差五就被封掉一个解析接口,导致今天能用明天就失效。
- 清晰度绑定账号:非会员能缓存到的最高画质被限制得很低,很多高码率资源必须开会员才给你缓存权限。
这导致一个结果:网上那些宣称“万能解析”“一键下载全网视频”的网站和软件,大多不是失效了,就是夹杂着恶意广告和捆绑安装。相比之下,真正靠谱的方案反而是最朴素的两种。
2. 方法一:官方App离线缓存,最省心的行走路线
2.1 原理与前置条件
所谓官方缓存,就是B站自己的App内置的“缓存”按钮。它的本质是平台替你下载了一份加密并且分片的视频数据,存放在手机本地。这样做的优点是:完全合法合规,不依赖第三方服务,清晰度有保证,而且基本不会出现下载到一半被掐断的情况。
不过它有几个前提你得先知道:
- 必须是安卓或者iOS的B站客户端,网页端没有这个缓存按钮。
- 能否缓存、缓存到多高画质,跟你的登录账号等级、是否为年度大会员、是否开通对应权益有关系。
- 缓存文件是私有格式,不能直接丢给剪辑软件用,需要二次提取和合并。
我这么说可能有点抽象,展开讲一下你就明白了。
2.2 具体操作步骤
在手机上操作就六步:
- 打开B站App,登录你的账号。
- 找到想下载的视频,进入播放页。
- 点击视频右上角或者底部的“缓存/下载”按钮(不同版本位置略有不同,一般是个向下箭头的图标)。
- 在弹出窗口选择清晰度。如果你需要最高画质,注意看它有没有锁会员标。
- 确认后等进度条走完,视频会出现在“我的-离线缓存”里。
- 在离线缓存列表里点击视频即可离线观看,飞行模式下也能播。
这里我建议把“仅WiFi下缓存”关掉,否则在外面用流量时要等WiFi。另外,缓存前需要先确定缓存所有分P还是只缓存当前P,多P合集记得在设置里改成“全部”。
2.3 缓存文件的提取与格式转换
很多人走到第6步觉得就完了,但实际需求往往是“我要把缓存视频转成MP4存在电脑里”。这时候就要去手机存储目录里找文件了。
安卓端的缓存路径通常长这样:
/storage/emulated/0/Android/data/tv.danmaku.bili/download/数字编号/视频编号/里面一般是两个文件:
30280 (视频流,无扩展名,其实是个m4s分片) 30281 (音频流,无扩展名,也是m4s分片)它们分别对应纯视频轨和纯音频轨。直接改名成.mp4是打不开的,需要合并。这里强烈建议使用 FFmpeg 做无损合并:
ffmpeg -i 30280.m4s -i 30281.m4s -c copy output.mp4注意需要先把这两个文件加.m4s后缀,或者用命令行直接指定:
ffmpeg -i "30280" -i "30281" -c copy 成品.mp4实测下来,这种合并速度极快,因为-c copy不是重新编码,只是把视频流和音频流打包进MP4容器里,画质没有任何损失。
iOS端的缓存则完全不同——如果不越狱的话,你基本拿不到缓存文件本身,只能在App内部看。这也是我一直对苹果用户推荐下一节方法的直接原因。
3. 方法二:开源命令行工具 you-get,灵活度最高
3.1 为什么选它而不选其他工具
其实到2026年,市面上能下载B站视频的工具并不少,但我的首选始终是 you-get。理由很务实:
- 开源免费,没有弹窗广告,没有绑定的全家桶。
- 更新活跃:B站接口经常变动,这个项目一直有人维护,算法签名变了也能及时跟着更新。
- 支持清晰度选择:从流畅到4K,你可以自己指定,不像某些网站只给你一个模糊的720p。
- 批量处理友好:适合下载整个合集和课程。
有个同类工具叫 yt-dlp,功能也很强,但它更多偏向海外平台,国内B站的解析稳定性反而不如 you-get 本地化做得好。所以我的建议是:专站用专工具,B站用 you-get 最顺手。
3.2 安装与环境准备
you-get 本质是一个 Python 工具,所以需要电脑上装了 Python。如果你还没装,去官网下载稳定版,安装时记得勾选“Add Python to PATH”。装好后打开终端/命令提示符:
pip install you-get这里有一点实测提醒:国内环境下,pip 下载慢的话,可以临时用国内镜像源:
pip install you-get -i https://pypi.tuna.tsinghua.edu.cn/simple我看过不少朋友卡在这一步,其实换下载源就秒解决了。
想验证是否装好,运行:
you-get --version出现版本号就说明OK。
3.3 常用命令与实战案例
最基础的使用方法,一句话就行:
you-get "视频页面的URL"它会在你当前目录下,下载该项目能拿到的最高清晰度视频,并把视频和音频合并成一个 MP4。这是最简单也最常用的一招。
但2026年的使用体验告诉我,很多人一上来就用默认命令,容易摔跤。原因是某些视频的默认清晰度可能是720P,或者下载返回的是一堆分片文件而不是完整MP4。所以我通常会先用-i参数查看可用格式:
you-get -i "视频URL"输出会列出类似这样的信息:
dash-flv1080p video/mp4; codecs="avc1.640028,mp4a.40.2" dash-hd video/mp4; codecs="avc1.64001F,mp4a.40.2"然后我指定想要的画质:
you-get --format=dash-flv1080p "视频URL"这样下载下来的成品就是一个已经合并好的MP4,直接可以拖进剪辑软件。
多P合集要怎么下载?加一个参数:
you-get --playlist "合集URL"它会自动识别分P,逐个下载。下载网课的时候这个功能特别香。
另外我习惯把下载目录固定一下,方便管理:
you-get -o D:/Bilibili -O 视频标题 "视频URL"-o指保存目录,-O指自定义文件名。实测这个顺序不能反了,否则它会认为-O后面的东西是URL的一部分。
中途断网了怎么办?再加一个断点续传参数:
you-get -c "视频URL"它会跳过已经下载完的分片,从断点处继续。我在高铁上用这个功能续过好几次大文件下载,非常稳定。
4. 常见问题与避坑手册(2026年实测版)
4.1 下载后文件没法播,后缀名奇怪
如果你用App缓存方式拿到的是v.m4s、a.m4s这类文件,不要直接双击,因为普通播放器不认。很多所谓“B站缓存提取工具”其实也是在本地帮你调FFmpeg,绕一圈还是回到我说的合并方案。
还有一种情况是你拿到的是.dvi分片,这是另一套私有封装。处理方式一样,先重命名为.m4s或.mp4,再用FFmpeg合并即可。实测很多.dvi其实就是视频轨和音频轨交错存储,FFmpeg -c copy 完全能识别。
4.2 you-get 报错或解析失败
最常见的问题是版本太旧:
pip install -U you-get更新完再看。如果还不行,检查一下是不是用了非常老的Python版本,建议Python 3.10以上。
另外,B站登录后才能看的部分视频,需要在 you-get 里带 Cookie:
you-get --cookies-from-browser chrome "视频URL"这个参数会自动读取浏览器里已登录B站的Cookie。实测用 Chrome 或 Edge 都可以,但前提是浏览器里已经登录过B站的账号。如果遇到“仅限会员下载”的视频,工具会明确提示无权下载,那就只能回到App缓存路线碰碰运气。
4.3 音画不同步、文件体积太大
音画不同步多半是下载到一半时网络抖动,或者程序意外退出导致分片不完整。解决办法:删掉那个不完整的文件,重新下载,或者用断点续传参数接着下。别嫌麻烦,这一步省不了。
文件体积如果异常大,一般是因为下载到了高码率的多码流版本。用you-get -i列出格式后,选一个dash-hd就足够日常收藏,体积能小一半以上。画质在手机屏幕上看不出差别。
4.4 版权视频和付费视频无解
这里得说句公道话:不是所有B站视频都能下载。独播影视剧、付费课程、部分版权音乐视频,官方App会限制缓存,you-get 也绕不过去。你看到网上有些“破解版”工具号称能下,多半是要么失效,要么捆绑了恶意软件。我的建议是,这类内容还是老老实实在线看,别折腾。
5. 一点个人使用心得
我实际使用下来,日常最顺手的组合是:电脑批量下载用 you-get,手机快速缓存用官方App。前者适合处理资料库、课程合集、剪辑素材,后者适合出门前顺手存几个想看的视频。
还有几个经验分享给你。
第一,下载完别直接删源文件,先检查一下元数据。有的视频下完是能放,但文件名是乱七八糟的ID,建议保留原页面链接,万一后续想补字幕还能找回去。
第二,B站字幕是外挂式的,you-get 默认不下弹幕和字幕。想要字幕的话,可以用它的可选参数,或者单独去B站弹幕接口把字幕存成.srt。这个稍微麻烦点,但值得折腾,尤其适合学习类视频。
第三,批量下载几十个视频时,控制一下并发数。我踩过坑:一次开十个任务,结果中间有几个因为限流失败。后来改成同时跑两个任务,反而又快又稳。
最后说一句关于版权的话。你下载B站视频,目的是离线收藏、学习、做个人创作素材,这都没问题。但如果你要拿去搬运、二传、或者做成自己的商业内容,那就越界了。我在处理每一次下载时都会提醒自己:工具是中性的,分寸在自己手里。尤其是从创作者角度想,谁都不希望自己的心血被无授权使用。
这套下载方案我延续用了一年多,期间B站改过好几次接口,但这两条路一直都稳。你按照上面的步骤操作,大概率能少走很多弯路。如果你卡在某个细节上,比如FFmpeg不会装、合并报错、Cookie读不出来,多半就是上面提到的某一个问题,重新对一遍就好。