yt-dlp:YouTube 油管视频下载工具

此文章发布于 6 个月前,部分信息可能已经过时,请自行斟酌确认。

友情提示:使用此工具下载 YouTube 视频的前提是您有可以打开 YouTube 的梯子~

软件介绍

yt-dlp 是一个基于现在已经停止活动的 youtube-dl 的分叉项目。这个项目的主要重点是增加新的功能和补丁,同时也保持与原项目的更新。

简单点说这个工具用来下载 YouTube 视频。

下载地址

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

使用方法

  • 下载后解压到任意目录;
  • 为方便使用添加到环境变量;
  • 使用命令提示符/Powershell执行命令下载。

命令语法

yt-dlp [OPTIONS] [--] URL [URL...]

常用参数

# 查看帮助
yt-dlp -h

# 查看版本
yt-dlp --version

# 设置代理并下载指定视频转换成 mp4 格式
yt-dlp --proxy http://127.0.0.1:52180 https://www.youtube.com/watch?v=sOMPsNxO4cI --merge-output-format mp4

-F:查看视频格式构成
-f:指定格式下载

下载图示

20220316_162933.png

示例讲解

转自:https://zhuanlan.zhihu.com/p/431013905

查看指定视频的格式构成:yt-dlp -F --proxy socks5://127.0.0.1:1080 https://www.youtube.com/watch?v=rrQJvPaPbFM

yt-dlp -F --proxy socks5://127.0.0.1:8080  https://www.youtube.com/watch?v=rrQJvPaPbFM
[youtube] rrQJvPaPbFM: Downloading webpage
[youtube] rrQJvPaPbFM: Downloading android player API JSON
[info] Available formats for rrQJvPaPbFM:
ID  EXT  RESOLUTION FPS |  FILESIZE   TBR PROTO | VCODEC        VBR ACODEC     ABR  ASR    MORE INFO
--- ---- ---------- --- - --------- ----- ----- - ----------- ----- --------- ---- ------- -----------------
139 m4a  audio only     |  1.25MiB    48k https |                   mp4a.40.5  48k 22050Hz low, m4a_dash
249 webm audio only     |  1.32MiB    51k https |                   opus       51k 48000Hz low, webm_dash
250 webm audio only     |  1.76MiB    68k https |                   opus       68k 48000Hz low, webm_dash
140 m4a  audio only     |  3.32MiB   129k https |                   mp4a.40.2 129k 44100Hz medium, m4a_dash
251 webm audio only     |  3.53MiB   137k https |                   opus      137k 48000Hz medium, webm_dash
17  3gp  176x144    6   |  1.98MiB    77k https | mp4v.20.3     77k mp4a.40.2   0k 22050Hz 144p
160 mp4  256x144    25  |  2.34MiB    91k https | avc1.4d400c   91k                        144p, mp4_dash
278 webm 256x144    25  |  2.33MiB    90k https | vp9           90k                        144p, webm_dash
133 mp4  426x240    25  |  5.24MiB   204k https | avc1.4d4015  204k                        240p, mp4_dash
242 webm 426x240    25  |  4.03MiB   157k https | vp9          157k                        240p, webm_dash
134 mp4  640x360    25  |  10.53MiB  410k https | avc1.4d401e  410k                        360p, mp4_dash
18  mp4  640x360    25  |  12.97MiB  505k https | avc1.42001E  505k mp4a.40.2   0k 44100Hz 360p
243 webm 640x360    25  |  6.97MiB   271k https | vp9          271k                        360p, webm_dash
135 mp4  854x480    25  |  20.45MiB  797k https | avc1.4d401e  797k                        480p, mp4_dash
244 webm 854x480    25  |  12.25MiB  477k https | vp9          477k                        480p, webm_dash
136 mp4  1280x720   25  |  39.90MiB 1555k https | avc1.64001f 1555k                        720p, mp4_dash
22  mp4  1280x720   25  |           1684k https | avc1.64001F 1684k mp4a.40.2   0k 44100Hz 720p
247 webm 1280x720   25  |  24.14MiB  941k https | vp9          941k                        720p, webm_dash
137 mp4  1920x1080  25  |  85.85MiB 3347k https | avc1.640028 3347k                        1080p, mp4_dash
248 webm 1920x1080  25  |  43.23MiB 1685k https | vp9         1685k                        1080p, webm_dash

从结果中可知最佳画质视频 IDmp4 格式的 137webm 格式的 248(纯视频无音轨),最佳音轨 ID 为 m4a 格式的 140webm 格式的 251(纯音轨无视频)。如果你认为 720p 已经满足需求,则只下载 ID22 也可(已经包含视频和音轨)。这里我们先选择 mp4 的视频和 m4a 的音轨进行合并。

下载

命令:yt-dlp -f 137+140 --proxy socks5://127.0.0.1:8080 https://www.youtube.com/watch?v=rrQJvPaPbFM --merge-output-format mp4 --external-downloader aria2c --downloader-args aria2c:"-x 16 -k 1M"

解释:

yt-dlp -f [下载ID] [代理配置] [视频链接] [合并语句] [外部下载器选择] [下载器参数]
-f [id] #选择下载内容,注意和 -F 区分。例子中使用137+140,如果你只下载720p则填写22就好,后面的合并语句可不填写。
--proxy #代理配置 见前文
--merge-output-format [合并输出格式] #例子中选择mp4作为输出格式
--external-downloader [下载器名称] #下载器选择 例子中选择aria2c
--downloader-args [下载器名称]:"[下载器配置]" #下载器配置语句 例子中 x 16 代表16线程下载 -k 1M 代表块大小为1M 但youtube不支持分块故此句可忽略

下载完成后 ffmpeg 合并视频和音轨,输出至你的 cmd 的当前路径。

最后修改:2022 年 03 月 16 日 04 : 56 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论