yt-dlp 命令行工具轻松下载各大平台视频

yt-dlp 命令行工具轻松下载各大平台视频

yt-dlp是什么?

yt-dlp是一款功能强大的命令行视频下载工具,它是基于已停止维护的youtube-dlc项目的youtube-dl 分支。它能够从包括YouTube、Vimeo等在内的数千个网站下载音视频,并且具有丰富的特性和改进,同时支持Windows、macOS和Linux系统。

主要功能

yt-dlp作为一款功能丰富的下载工具,具备了多种实用的特点,使得它在众多下载工具中脱颖而出。以下是yt-dlp的一些主要功能:

1. 灵活的下载选项

用户可以自定义下载参数,例如选择视频分辨率、音频格式、字幕和封面等。

2. 增强的性能

yt-dlp 在下载速度和稳定性方面有所提升,并且支持使用外部下载器(如aria2)来加速下载。

3. 自动化下载:

yt-dlp 支持批量下载,可以根据用户定义的规则和参数进行自动化下载。

4. 视频格式转换:

yt-dlp 能够将下载的视频转换为不同的格式,例如MP4、WebM 等。

5. 音频提取:

yt-dlp 可以从视频中提取音频,并将其保存为单独的文件。

6. 字幕下载:

用户可以下载视频的字幕,并选择所需的格式和语言。

7. 网络选项:

允许用户调整网络设置,如代理配置、超时值和用户代理字符串,以绕过地理限制。

8. 从浏览器导入cookies:

方便用户下载需要登录才能访问的视频内容。

9. SponsorBlock 集成:

可以自动跳过视频中的赞助商内容,节省观看时间。

安装yt-dlp

自己平常用的系统是windows,所以选择Windows安装。

1. 下载yt-dlp

点击地址链接进到作者GitHub项目,点击releases然后选择自己系统对应的版本。

2. 下载流媒体处理工具 ffprobe ffmpeg

FFmpeg 和ffprobe 都是由同一个开源项目FFmpeg 提供的工具,它们在音视频处理中扮演着不同的角色。FFmpeg 是一个强大的命令行工具,用于转换、录制、流化等音视频处理,而ffprobe 是用于分析多媒体文件信息的工具。

点击项目地址链接ffmpeg进入下载页面,点击download然后选择对应的系统版本进行下载ffmpeg软件。

鼠标放在window这个tab上面,点击下面的第一个选项

选择这个版本进行下载

解压文件,打开压缩包,进入bin文件把执行文件复制出来。

把这几个执行文件复制到C盘Windows system 32文件中

正确复制过去就安装完成了,之前的文件可以删除。

3. 下载一个视频测试一下

再你想要把视频下载到的文件中打开命令行终端

在终端输入yt-dlp+视频链接

使用yt-dlp

yt-dlp 有很多参数可以使用,根据自己的需求使用对应的参数。下面我介绍一些常用的参数。

1. 下载视频和音频常用参数

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

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

2. 只下载音频

yt-dlp -x [视频链接]

3. 下载字幕

  • 先查看视频有哪些字幕:yt-dlp --list-subs [视频链接]
  • 下载特定语言的字幕(不下载视频):
1
yt-dlp --cookies [cookies文件地址] --write-automatic-subs --write-subs --sub-langs [语言代码] --skip-download [视频地址]

具体参数使用和说明请查看这个链接参数说明

4. 批量下载

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

5. 下载播放列表

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

1
2
3
yt-dlp [播放列表链接]
#
yt-dlp [播放列表ID]

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

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

  • 查看可用的视频格式、分辨率和音频:yt-dlp -F [视频链接]
  • 下载指定格式的视频+音频:yt-dlp -f [视频格式ID+音频格式ID] [视频链接]

7. 下载视频格式选择

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

  • 下载最佳视频和音频质量,并自动合并(推荐):
1
yt-dlp -f "bv*+ba/b" [视频链接]
  • 指定输出格式,例如 MP4:
1
yt-dlp -f "bv*[ext=mp4]+ba[ext=m4a]/b" [视频链接]

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

  • bv*:选择最佳视频流bestvideo的简写,添加*号表示支持所有编码。
  • ba:选择最佳音频流bestaudio的简写。
  • b:如果单文件中已经包含视频和音频,则直接下载。
  • ext=mp4/m4a:指定输出格式为 MP4/M4A。
    3如果你想确保最终文件一定是 MP4 格式,可以使用以下命令:
1
yt-dlp -f "bv*+ba/b" --merge-output-format mp4 [视频链接]

cookies的使用

下载视频很多时候可能需要用户登录,所以就需要使用cookies,这里我就一下载字幕为例,怎么下载和使用cookies。
注意:不要用同一个cookies一直频繁下载视频可能会导致封号。最好找一个不常用的账号登录进行下载。

1. 获取Cookies

获取cookies我们需要一个浏览器扩张插件。这里以chrome浏览器为例子。点击链接扩展程序进入扩展程序安装页面。
在搜索框输入get cookies点击添加到扩展程序即可

安装完成以后到视频平台刷新页面,点击扩展程序管理图标就可以看到安装的这个获取cookies的扩展程序了

点击这个扩展程序导出即可

2. 使用cookies

在控制台输入命令,加长–cookies [cookies文件]就可以正常访问了。
我这里把cookies的文件名字改了,方便自己引用。引入文件文件夹一定要写对,我这里把文件复制到和下载的视频在同一个文件夹内容。

常用shell命令

1
2
3
4
5
# 从视频中指定的时间截取,--download-sections
yt-dlp -f 'ba[acodec^=mp3]/ba/b' -x --audio-format mp3 --download-sections "*111-115" [视频链接]

# 下载字幕
yt-dlp --cookies ./jean-cookies.txt --write-automatic-subs --write-subs --sub-langs=en*,zh-Hans --skip-download [视频链接]

详细文档地址

你可以查看详细的使用文档
详细文档