yt-dlp 使用教程

之前用you-get、youtube-dl下载油管视频都很慢,只有几十KB最多。
于是网上找到了这个 yt-dlp 的代替工具。
项目地址:github.com/yt-dlp/yt-dl

安装yt-dlp

1. 安装Pythonffmpeg

  • Python:安装时把pip和添加系统环境变量都选上
  • ffmpeg:下载好exe文件,把目录添加到系统环境变量就行

2. 安装yt-dlp

pip install yt-dlp

如果不想用pip安装的,就去项目地址下载exe版本:
github.com/yt-dlp/yt-dl

然后把yt-dlp.exe 也一样放到系统环境的目录下就行。比如就放到ffmpeg的bin目录下,跟ffmpeg.exe和youtube-dl.exe放一起就行。

调试查看yt-dlp是否正常yt-dlp -vU

 

下载视频

支持下载哪些网站,项目文档上也有:
github.com/yt-dlp/yt-dl

比如我想下载这个视频:youtu.be/sKrT6mBrosc

1. 直接下载

默认格式,高于720P的格式一般是 webm 格式

yt-dlp youtu.be/sKrT6mBrosc

下载视频转换成mp4(用–merge-output-format参数)

yt-dlp –merge-output-format mp4 youtu.be/sKrT6mBrosc

2. 查看视频所有分辨率

跟用 youtube-dl命令一样,先用-F参数查看有哪些分辨率。

yt-dlp -F youtu.be/sKrT6mBrosc

结果跟用 youtube-dl命令的差不多,标题行含义: > ID:文件ID > EXT:格式 > RESOLUTION:分辨率 > FPS:视频的帧率 > FILESIZE:文件大小 > VCODEC:audio only表示仅音频 > ACODEC:video only表示仅视频(没有音频);像mp4a.40.2(720p)就直接包含了音频

3. 下载指定分辨率

1.只下载音频

找m4a格式,列表越靠后越清晰。比如ID:140 | EXT:m4a | audio only

yt-dlp -f140 youtu.be/sKrT6mBrosc

2.下载音频转换成mp3(加上-x –audio-format参数)

yt-dlp -f140 -x –audio-format mp3 youtu.be/sKrT6mBrosc

3.下载视频(带音频)ID:22 | EXT:mp4 | 1280*720

yt-dlp -f22 youtu.be/sKrT6mBrosc

4.下载指定分辨率视频+音频(为了方便就直接下载mp4格式了)

1080及以上分辨率的音频和视频是分开的,所以一般会音频和视频一起下载

yt-dlp -f299+140 youtu.be/sKrT6mBrosc

5.(通用)下载最佳mp4视频+最佳m4a音频格式并合成mp4

yt-dlp -f ‘bv[ext=mp4]+ba[ext=m4a]’ –embed-metadata –merge-output-format mp4 youtu.be/sKrT6mBrosc

6.指定文件名下载(用-o参数)

默认下载的文件格式是:title+空格+[id].格式,比如* [sKrT6mBrosc].mp4

文件名只要标题,不要id,加上 -o ‘%(title)s.mp4’

yt-dlp -f ‘bv[ext=mp4]+ba[ext=m4a]’ –embed-metadata –merge-output-format mp4 youtube.com/watch? -o ‘%(title)s.mp4’

最方便直接用,可以直接用最后一种通用的下载最佳视频的方式。

4. 下载播放列表所有视频

yt-dlp youtube.com/playlist?**

 
 
 
==================================================================================================================

yt-dlp 常用命令示例

yt-dlp 是一个功能丰富的命令行音视频下载器,支持从多个网站下载视频和音频资源。如果您想要下载一个视频,可以使用以下基本命令:

yt-dlp [视频链接]

例如,如果您有一个视频链接,您可以直接将该链接替换到命令中,如下所示:

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

这将会下载视频的默认最佳质量。如果您需要更多选项,比如选择特定的视频质量、格式或者下载播放列表,yt-dlp 提供了多种参数来满足不同的需求。以下是一些常用的命令示例:

  1. 下载最佳质量的视频和音频yt-dlp -f "bestvideo+bestaudio" [视频链接]
  2. 限制下载视频的最大分辨率yt-dlp -f "bestvideo[height<=1080]+bestaudio" [视频链接]
  3. 下载特定格式的视频(例如,仅下载 MP4 格式的视频):yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]" [视频链接]
  4. 查看视频所有可用格式yt-dlp -F [视频链接]
  5. 下载播放列表yt-dlp [播放列表链接]
  6. 下载频道的所有视频:复制yt-dlp [频道链接]

下载音频

如果只想下载音频,可以使用-x参数:

yt-dlp -x [视频链接]

如果有音频文件,会直接下载;如果没有,则下载视频,然后通过 FFmpeg 转换成音频文件,最后自动删除视频文件。

下载字幕

1先查看视频有哪些字幕:

yt-dlp --list-subs [视频链接]

下载特定语言的字幕(不下载视频):

yt-dlp --write-subs --sub-langs [语言代码] --skip-download [视频链接]

批量下载视频

  • 直接在命令中列出多个视频链接:
yt-dlp [视频链接1] [视频链接2]
  • 将视频链接保存在文本文件中,然后通过-a参数指定文件路径:
yt-dlp -a [文本文件路径]

下载播放列表

直接使用播放列表链接或 ID:

yt-dlp [播放列表链接]
# 或
yt-dlp [播放列表ID]

指定视频格式、画质和音频(常用)

视频提供了多种格式和分辨率选项,包括 mhtml、mp4、m4a、webm,以及 256×144、1280×720、1920×1080 等。你可以使用-F参数来查看目标视频的可用格式、分辨率和音频,以便做出选择。

1查看可用的视频格式、分辨率和音频:

yt-dlp -F [视频链接]

下载指定格式的视频+音频:

yt-dlp -f [视频格式ID+音频格式ID] [视频链接]

下载最佳质量视频

如果要快速下载最佳质量的视频,yt-dlp 也提供了几个实用的格式选择器:

1下载最佳视频和音频质量,并自动合并(推荐):

yt-dlp -f "bv*+ba/b" [视频链接]

2指定输出格式,例如 MP4:

yt-dlp -f "bv*[ext=mp4]+ba[ext=m4a]/b" [视频链接]

这里的格式参数说明如下:

  • bv*:选择最佳视频流bestvideo的简写,添加*号表示支持所有编码。
  • ba:选择最佳音频流bestaudio的简写。
  • b:如果单文件中已经包含视频和音频,则直接下载。
  • ext=mp4/m4a:指定输出格式为 MP4/M4A。

3如果你想确保最终文件一定是 MP4 格式,可以使用以下命令:

yt-dlp -f "bv*+ba/b" --merge-output-format mp4 [视频链接]
posted @ 2025-08-07 15:04  Leone-  阅读(294)  评论(0)    收藏  举报