yt-dlp 是 youtube-dl 的一个分支,主要基于现在维护不太活跃的 youtube-dlc。该项目的主要重点是添加新功能和补丁,同时与原始项目保持同步。

GitHub 链接:https://github.com/yt-dlp/yt-dlp

其实就 YouTube 视频下载工具来说,youtube-dl 原来是挺方便的,但是现在被限速到只有 60KB/s,而 yt-dlp 算是完美解决了这个问题。

安装

类 UNIX 系统 (MacOS, Linux, BSD)

sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp
sudo wget https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -O /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp
sudo aria2c https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp --dir /usr/local/bin -o yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp

用 PIP 安装

python3 -m pip install -U yt-dlp

用 Homebrew 安装

brew install yt-dlp/taps/yt-dlp

直接下载可执行文件

https://github.com/yt-dlp/yt-dlp#release-files

升级

yt-dlp -U

如果之前是用 pip 安装的,也可以直接用相同的命令进行更新;若是用 Homebrew 安装也可用以下命令:

brew upgrade yt-dlp/taps/yt-dlp

使用方法

下载单个视频或音频

下载分辨率 ≥ 720p 的最佳格式(视频 + 音频),并另存为 视频id.扩展名(将下面代码中的 %(id)s 改为 %(title)s 可另存为 视频名.扩展名):

yt-dlp -f "best[height>=720]" https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.%(ext)s'

下载并合并最佳视频流与最佳音频流:

yt-dlp -f 'bv*+ba' https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.%(ext)s'

下载 1080p 视频并与最佳音频流合并:

yt-dlp -f 'bv*[height=1080]+ba' https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.%(ext)s'

下载 mp4 格式的 1080p 视频并与最佳的 m4a 格式音频合并:

yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --merge-output-format mp4 https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.mp4'

使用 --embed-thumbnail 将视频缩略图嵌入到视频文件中:

yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --embed-thumbnail --merge-output-format mp4 https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.mp4'

使用 --embed-subs 将字幕嵌入视频文件(如果存在):

yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --embed-subs --merge-output-format mp4 https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.mp4'

使用 --embed-metadata 嵌入有关视频的元数据:

yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --embed-metadata --merge-output-format mp4 https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.mp4'

下载 mp3 格式的最佳质量的音频:

yt-dlp -f 'ba' -x --audio-format mp3 https://www.youtube.com/watch?v=1La4QzGeaaQ -o '%(id)s.mp3'

Playlists

下载整个 YouTube 播放列表的 1080p 视频,保存到 channel_id/playlist_id 目录:

yt-dlp -f 'bv*[height=1080]+ba' --download-archive videos.txt  https://www.youtube.com/playlist?list=PLlVlyGVtvuVnUjA4d6gHKCSrLAAm2n1e6 -o '%(channel_id)s/%(playlist_id)s/%(id)s.%(ext)s'

Channels

将整个 YouTube 频道下载为包含最高质量音频的 720p 视频。保存到以频道名称命名的文件夹中,并以视频的标题命名每个视频:

yt-dlp -f 'bv*[height=720]+ba' --download-archive videos.txt https://www.youtube.com/c/FootheFlowerhorn/videos -o '%(channel)s/%(title)s.%(ext)s'

本文分享自微信公众号 – 生信菜鸟团(bio_123456789),作者:鲍志炜

原文出处及转载信息见文内详细说明,如有侵权,请联系 [email protected] 删除。

原始发表时间:2022-01-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。