使用命令行和GUI分段下载B站视频

一、高效精准:yt-dlp 命令行(跨平台 Windows/Mac/Linux)

适合经常批量截取、追求精准时间控制,底层依靠 ffmpeg 切片,直接流式下载目标区间,不缓存完整视频

前置条件:

装好 yt-dlp + ffmpeg 两个程序

截取 3 分~30 分完整命令(直接复制修改链接即可)

1
2
# 格式:*起始时间-结束时间  时间写法 HH:MM:SS
yt-dlp --download-sections "*00:03:00-00:30:00" --cookies-from-browser chrome "B站视频链接"

参数解释:

  1. *00:03:00-00:30:00:固定截取 3 分钟 → 30 分钟片段
  2. --cookies-from-browser chrome:读取浏览器 B 站登录 Cookie,可下载大会员专属高清视频、付费内容。但此命令目前的Chrome等浏览器已不再支持,需按下方方法手动导出cookies.txt文件。
  3. 末尾替换成你的 BV 视频网址即可

拓展写法(秒数格式)

1
2
# 3分钟=180秒,30分钟=1800
yt-dlp --download-sections "*180-1800" "视频链接"

手动导出 cookies.txt 文件(最稳定通用,首选推荐)

永久解决 DPAPI 解密报错,B 站高清 / 大会员视频都能用,步骤:

  1. Chrome 商店安装扩展:Get cookies.txt LOCALLY(认准 LOCAL 版本,安全无广告)
  2. 打开 B 站网页,确保已经登录账号
  3. 点击扩展图标 → 选择 Export as Netscape cookies.txt
  4. 下载得到 bilibili.com_cookies.txt,放到你打开命令行的文件夹里
  5. 执行最终截取命令:
1
yt-dlp --cookies bilibili.com_cookies.txt --download-sections "*02:00:00-inf" "视频链接"

02:00:00是裁剪的起始时间,inf代表视频结束(亦可留空)

想要切割时间极致精准,加上参数 --force-keyframes-at-cuts,缺点下载稍慢:

1
yt-dlp --cookies bilibili.com_cookies.txt --force-keyframes-at-cuts --download-sections "*02:00:00-inf" "视频链接"

方案 3:匿名下载(仅限免费公开视频,无大会员高清)

如果这个视频不需要大会员观看,直接删掉 Cookie 参数即可,不会报解密错误:

1
yt-dlp --download-sections "*02:00:00-inf" "视频链接"

❌ 弊端:只能 720P 及以下免费清晰度,大会员专属 1080P/4K 无法获取

image-20260726083115071

二、GUI 封装版 yt-dlp:Parabolic(可视化界面)

不想敲命令就用它,基于 yt-dlp 开发的图形软件 - Parabolic

  1. 粘贴 B 站链接解析视频;
  2. 下载设置里找到 自定义下载时间段
  3. 填入开始 03:00、结束 30:00,选择画质一键下载; 兼容 B 站所有分辨率,自带 Cookie 导入,Mac/Windows 都能用。

image-20260726082723078

PS:Youtube视频能不能下?当然可以哦!不然怎么叫yt-dlp :)