如何用yt-dlp命令行工具轻松下载youtube(油管)和Bilibili(B站)等各大平台视频

[up主专用,视频内嵌代码贴在这]

如何用yt-dlp命令行工具轻松下载Bilibili和YouTube等各大平台视频

在数字时代,视频内容是我们生活的重要组成部分。无论是Bilibili上的动画、Vlog,还是YouTube上的教程、音乐MV,我们有时希望将这些视频下载到本地以便离线观看或存档。yt-dlp 是一个功能强大的开源命令行工具,让你轻松下载来自Bilibili、YouTube以及其他数百个平台的视频。本教程专为Windows用户设计,带你一步步掌握如何使用 yt-dlp 下载你喜爱的视频,包括一种无需安装Python或配置环境变量的简便方法。


什么是 yt-dlp?

yt-dlp,全称 YouTube Downloader Plus,顾名思义这个软件最早就是专门为了下载youtube视频量身定做的,是广受欢迎的 youtube-dl 的一个增强分支,经过优化,提供了更快的下载速度、更广泛的网站兼容性和对新格式的支持。它支持几乎所有主流视频平台,包括:

  • Bilibili
  • YouTube
  • Vimeo
  • Twitter
  • Instagram
  • 以及数百个其他网站

详细内容可以去看它的github官网介绍:https://github.com/yt-dlp/yt-dlp

作为一款免费、开源的命令行工具,yt-dlp 特别适合追求高效操作的Windows用户。本教程将为你提供两种使用方式:传统安装和无需安装Python的便携方法。


准备工作

下载

yt-dlp:https://github.com/yt-dlp/yt-dlp/releases

ffmpeg:https://github.com/BtbN/FFmpeg-Builds/releases

以下是使用 yt-dlp 的两种准备方法,专为 Windows 用户设计。第二种方法无需安装 Python 或配置环境变量,适合初学者或希望快速上手的用户。

方法 1:传统安装(通过 Python)

1. 安装 Python

yt-dlp 需要 Python 环境(推荐 Python 3.8 或更高版本)。如果尚未安装 Python,请按以下步骤操作:

  • 访问 Python 官方网站,下载适用于 Windows 的最新版本。

  • 运行安装程序,确保勾选“Add Python to PATH”选项,然后点击“Install Now”。

  • 安装完成后,打开命令提示符(按 Win+R,输入 cmd,回车),运行以下命令检查版本:

    1
    python --version

    确认 Python 已正确安装,并确保 pip(Python 的包管理器)可用:

    1
    pip --version

2. 安装 yt-dlp

安装 yt-dlp 非常简单,只需使用 pip 命令:

  • 打开命令提示符,运行:

    1
    pip install -U yt-dlp

    此命令将从 yt-dlp 官方 PyPI 页面 下载并安装最新版本的 yt-dlp。-U 参数确保即使已安装旧版本,也会升级到最新版。

  • 安装完成后,运行 yt-dlp --version 确认安装成功。

3. 安装 FFmpeg

FFmpeg 是一个多媒体处理工具,yt-dlp 依赖它来合并视频和音频流、转换格式等。安装 FFmpeg 可以解锁更高画质的下载功能。

  • 访问 FFmpeg 官方网站,下载适用于 Windows 的最新版 FFmpeg 可执行文件(推荐从 gyan.dev 或 BtbN 的构建页面获取稳定版本)。

  • 解压下载的压缩 package,将 ffmpeg.exe 文件所在的 bin 文件夹添加到系统 PATH:

    1. 右键“此电脑”,选择“属性” > “高级系统设置” > “环境变量”。
    2. 在“系统变量”中找到“Path”,点击“编辑”,添加 FFmpeg 的 bin 文件夹路径(例如 C:\ffmpeg\bin)。
  • 完成后,在命令提示符运行:

    1
    ffmpeg -version

    如果显示版本信息,说明 FFmpeg 已成功安装。

方法 2:便携方法(无需安装 Python 或配置环境变量)

如果你不想安装 Python 或修改系统环境变量,可以使用 yt-dlp 和 FFmpeg 的可执行文件,操作更简单:

  1. 下载 yt-dlp 可执行文件

    • 访问 yt-dlp 官方发布页面,下载适用于 Windows 的最新版 yt-dlp.exe(例如 yt-dlp_windows.exe)。
  2. 下载 FFmpeg 可执行文件

    • 访问 FFmpeg 官方网站,下载适用于 Windows 的 FFmpeg 压缩包(推荐从 gyan.dev 获取)。
    • 解压压缩包,提取 ffmpeg.exe(通常在 bin 文件夹中)。
  3. 创建工作文件夹

    • 在你的电脑上创建一个文件夹,例如 C:\yt-dlp
    • 将下载的 yt-dlp.exeffmpeg.exe 放入这个文件夹。
  4. 启动命令提示符

    • 打开 C:\yt-dlp 文件夹,右键空白处,按住 Shift 键并选择“在此处打开命令窗口”或“打开 PowerShell 窗口”。
    • 或者,打开命令提示符,输入 cd C:\yt-dlp 切换到该文件夹。
  5. 验证

    • 在命令提示符中运行:

      1
      yt-dlp --version

      确认 yt-dlp 版本信息显示。

      1
      ffmpeg -version

      确认 FFmpeg 版本信息显示.

使用此方法,yt-dlp 和 FFmpeg 将直接从该文件夹运行,无需进行系统范围的环境变量配置或安装 Python。所有后续命令都应从在此文件夹中打开的命令提示符中运行


基本使用方法

yt-dlp 的基本命令格式如下:

1
yt-dlp [选项] 视频URL

只需提供视频的 URL,yt-dlp 就会自动下载默认格式的视频。以下以 Windows 系统为例,展示如何下载 Bilibili 和 YouTube 视频。如果你使用方法 2,确保在 C:\yt-dlp 文件夹内打开命令提示符运行命令

1. 下载 Bilibili 视频

假设你想下载一个 Bilibili 视频,只需复制视频链接并运行:

1
yt-dlp https://www.bilibili.com/video/BV16vdmYSEfF?t=9.7

例如:

1
yt-dlp https://www.bilibili.com/video/BV16vdmYSEfF?t=9.7

这会下载视频的默认格式(通常是 MP4,包含视频和音频),文件将保存在当前工作目录(对于方法 2,是 C:\yt-dlp 文件夹)。

选择视频和音频质量并合并

Bilibili 视频通常提供多种分辨率(如 360p、720p、1080p)和音频质量选项。使用 -F 参数列出所有可用格式:

1
yt-dlp -F https://www.bilibili.com/video/BV16vdmYSEfF?t=9.7

要选择特定视频和音频格式,例如 1080p 视频(ID 20280)+高品质音频(ID 100026),并合并音视频:

1
yt-dlp -f 30280+100026 https://www.bilibili.com/video/BV16vdmYSEfF?t=9.7

这将下载 1080p 视频和高品质音频,并使用 FFmpeg 自动合并为单个 MP4 文件。注意:此功能需要 FFmpeg 支持(方法 2 已包含 FFmpeg)。某些高质量格式可能需要登录才能访问,见下文“需要登录的情况”。

下载弹幕

Bilibili 的弹幕是其特色之一。yt-dlp 支持下载弹幕并转换为 ASS 字幕格式:

1
yt-dlp --write-subs --sub-format ass https://www.bilibili.com/video/BV1XX411Y7xX

这会生成一个 ASS 字幕文件,包含视频的弹幕内容。

需要登录的情况

某些 Bilibili 视频(大会员权限)需要登录才能访问。yt-dlp 支持通过 cookies 登录:

  1. 使用浏览器扩展(如 Export Cookies)导出 Bilibili 的 cookies,保存为 cookies.txt 文件,并将其放入 C:\yt-dlp 文件夹(对于方法 2)。
  2. 在命令中指定 cookies 文件:
1
yt-dlp --cookies cookies.txt https://www.bilibili.com/video/BV1XX411Y7xX

2. 下载 YouTube 视频

下载 YouTube 视频原理相同,复制视频链接并运行:

1
yt-dlp https://www.youtube.com/watch?v=VIDEO_ID

例如:

1
yt-dlp https://www.youtube.com/watch?v=dQw4w9WgXcQ

这会下载默认格式的视频(通常是 MP4),保存到当前目录。

选择视频质量

YouTube 视频有多种分辨率(如 360p、720p、1080p)。使用 -F 参数列出所有可用格式:

1
yt-dlp -F https://www.youtube.com/watch?v=VIDEO_ID

输出类似:

1
2
3
4
ID  EXT   RESOLUTION FPS | FILESIZE   | CODECS
137 mp4 1920x1080 30 | ~100.2MiB | avc1
136 mp4 1280x720 30 | ~50.1MiB | avc1
251 webm audio only | ~5.0MiB | opus

要下载 1080p 视频(ID 137)+最佳音频:

1
yt-dlp -f 137+251 https://www.youtube.com/watch?v=VIDEO_ID

注意:需要 FFmpeg 来合并视频和音频(方法 2 已包含 FFmpeg)。

3. 下载播放列表

yt-dlp 支持批量下载 Bilibili 或 YouTube 的播放列表。例如:

1
yt-dlp https://www.youtube.com/playlist?list=PLAYLIST_ID

默认下载整个播放列表。你可以通过 --playlist-start--playlist-end 参数指定范围:

1
yt-dlp --playlist-start 1 --playlist-end 5 https://www.youtube.com/playlist?list=PLAYLIST_ID

这将只下载播放列表中的第 1 到第 5 个视频。


高级功能

yt-dlp 提供了多种高级选项,提升下载灵活性。以下是一些实用功能,适合 Windows 用户。

1. 自定义输出文件名

默认情况下,yt-dlp 使用视频标题作为文件名。你可以通过 -o 参数自定义文件名和保存路径:

1
yt-dlp -o "C:\Videos\%(title)s.%(ext)s" https://www.youtube.com/watch?v=VIDEO_ID

其中:

  • %(title)s:视频标题
  • %(ext)s:文件扩展名
  • 路径使用反斜杠 \(Windows 风格)。

2. 下载字幕

yt-dlp 支持下载视频的字幕(如果可用)。例如,下载 YouTube 视频的英文和中文字幕:

1
yt-dlp --write-subs --sub-langs en,zh https://www.youtube.com/watch?v=VIDEO_ID

或下载自动翻译的字幕:

1
yt-dlp --write-auto-subs https://www.youtube.com/watch?v=VIDEO_ID

3. 限制下载速度

若不想占用过多带宽,可以限制下载速度:

1
yt-dlp --limit-rate 500K https://www.youtube.com/watch?v=VIDEO_ID

500K 表示 500KB/s。

4. 批量下载

将多个视频 URL 保存到一个文本文件(例如 urls.txt,每行一个 URL,放入 C:\yt-dlp 文件夹),然后运行:

1
yt-dlp --batch-file urls.txt

常见问题与解决方法

youtube拉黑了部分被滥用的IP段,可能是因为被这段IP段的用户爬虫爬的太严重了(猜测)

解决办法:梯子换个IP


结语

一般用户最常用的就是那两个命令,其他的很少用的到

yt-dlp 是一个强大且易用的工具,无论是下载 Bilibili 的弹幕视频和高清内容,还是 YouTube 的精彩视频,它都能轻松胜任。本教程为 Windows 用户提供了两种使用方式:传统安装和无需 Python 的便携方法,并详细介绍了如何选择 Bilibili 视频和音频质量并合并音视频。立即尝试下载你喜欢的视频吧!

更多问题可参考 yt-dlp 官方文档 或社区支持。祝你下载愉快!