跳转至内容

yt-dlp

来自 ArchWiki
(重定向自 Youtube-dl)

yt-dlp 是一款命令行程序,可轻松从一千多个网站下载视频和音频。请参阅 支持的网站列表

注意 yt-dlp 是 youtube-dl 的一个分支,在母项目停滞不前后创建。上游的 youtube-dl 仍可作为 youtube-dlAUR 安装;本页面上的命令仍然有效,但请查看 差异列表

安装

安装 yt-dlp 包。请参阅可选依赖项,安装其中重要的有

  • yt-dlp-ejs 以获得更好的支持,因为它已经弃用 YouTube 提取,并且某些格式可能会丢失 [1]
  • FFmpeg 用于一些网站的混流。

还有各种 图形前端 可用于 yt-dlp,例如 tartubeAURyt-dlg-gitAUR

您也可以安装 yt-dlp-drop-inAUR,它提供一个虚拟的 /usr/bin/youtube-dl 可执行文件(该文件仅重定向到 yt-dlp),用于仍然查找 youtube-dl 可执行文件的旧版程序。

配置

系统范围的配置文件是 /etc/yt-dlp.conf,用户特定的配置文件是 ~/.config/yt-dlp/config。语法是每行一个命令行选项。配置示例

--ignore-errors
# --no-playlist

# Save in ~/Videos
-o ~/Videos/%(title)s.%(ext)s

# Prefer 1080p or lower resolutions
-f bestvideo[height<=?1080]+bestaudio/best

有关更多信息,请参阅 [2]

也可以通过以下方式指定自定义配置文件

$ yt-dlp URL --config-locations PATH

用法

请参阅 yt-dlp(1) 手册。

$ yt-dlp [OPTIONS] URL
提示 在某些情况下(例如 YouTube),URL 可以被视频 ID 替换。

格式选择

当视频有多种格式可用时,youtube-dl 默认会下载最好的格式。

要获取可用格式列表

$ yt-dlp -F URL

要选择特定格式进行下载

$ yt-dlp -f format URL

提取音频

使用 -x 进行仅音频下载(需要 FFmpeg

$ yt-dlp -x -f bestaudio URL

根据可用的源流,这通常会纠正仅音频容器。如果不存在仅音频流,请从上面的示例中排除 -f bestaudio。这将下载视频并将其音频复制作为后期处理。默认情况下,这将删除下载的视频,包含 -k 以保留它。

还要包含专辑封面(需要 atomicparsley

$ yt-dlp -x -f bestaudio[ext=m4a] --add-metadata --embed-thumbnail URL

字幕

要查看可用的语言

$ yt-dlp --list-subs URL

下载带有选定字幕的视频(逗号分隔)

$ yt-dlp --write-sub --sub-lang LANG URL

对于自动生成的字幕

$ yt-dlp --write-auto-sub --sub-lang LANG URL

添加 --skip-download 以仅获取字幕。

Cookies

要导入 cookies,请添加 --cookies-from-browser <browser>

从 chromium 导入 cookies 的示例

$ yt-dlp --cookies-from-browser chromium URL

技巧与提示

更快的下载

一些网站会限制传输速度。您通常可以通过选择非 DASH 流或使用 aria2(一种支持多连接下载的外部下载器)来绕过此限制。例如

$ yt-dlp --downloader aria2c --downloader-args '-c -j 3 -x 3 -s 3 -k 1M' URL

播放列表

使用 youtube-dl 处理播放列表通常需要以下选项

$ yt-dlp --ignore-errors --continue --no-overwrites --download-archive progress.txt usual options URL

这组选项允许下载在中断后仍然可以继续。如果您正在归档,请添加您可能需要的常规 --write-xxx--embed-xxx 选项。

裁剪(部分下载)

可以通过使用 yt-dlp -g -f format URL 的输出作为 ffmpeg 输入,并使用 -ss(用于输入)、-t-c copy 选项来下载视频的部分内容。

从剪贴板复制 URL

可以设置一个 Shell 别名、一个 桌面启动器或一个键盘快捷键,通过从 X selection 输出 URL 来下载选定(或复制)URL 的视频(或音频)。请参阅 Clipboard#Tools

参见