youtube-dl的使用方法

youtube视频下载工具,目前比较好用的有you-getyoutube-dl

这两款,这里记录一下youtube-dl的使用方法。

环境要求

  • Python 3.0+(pip)
  • ffmpeg(用于合成视频音频分轨文件,需添加到环境变量path中便于在命令行中直接调用)

环境检测

使用pip --versionffmpeg --version命令检测pip和ffmpeg环境是否具备

代理设置

方法一

直接无脑开全局模式,这样就不用管其他的代理配置参数了

方法二

使用PAC模式,需要在下载命令中指定本地代理监听端口

1
2
3
--proxy "https://127.0.0.1:1080"
//或者直接这样
--proxy 127.0.0.1:1080
image-20200913140153955

下载

查看待下载视频所有类型

1
youtube-dl -F [url]

或者

1
youtube-dl --list-formats [url]

查看视频参数列表,可以在其中进行选择下载

image-20200913141042162

下载指定质量的视频和音频并自动合并

1
youtube-dl -f [format code] [url]

其中format code从本小节第一步中获得。
YouTube的1080p及以上的分辨率都是音视频分离的,所以需要使用137+140分别指定音轨和视频轨。 因为已经安装号了ffmpeg, youtube-dl 会自动合并下下好的视频和音频, 然后自动删除单独的音视频文件。

从中也可以看出youtube-dl支持断点续传。

image-20200913141408397

下载字幕

youtube-dl --write-sub [url] //这样会下载一个vtt格式的英文字幕和mkv格式的1080p视频下来

1
2
3
4
5
youtube-dl --write-sub --skip-download [url] //下载单独的vtt字幕文件,而不会下载视频

youtube-dl --write-sub --all-subs [url] //下载所有语言的字幕(如果有的话)

youtube-dl --write-auto-sub [url] //下载自动生成的字幕(YouTube only)

下载视频列表

youtube-dl -f [format code] [palylist_url] //这种方式可以下载制定清晰度的mp4视频

下载其他平台视频的方法也大同小异,不再赘述。

多线程下载

下载aria2c.exe并配置好环境变量。

1
2
3
4
5
6
youtube-dl [url] --external-downloader aria2c --external-downloader-args "-x 16 -k 1M"

–external-downloader aria2c #调用外部下载工具aria2c
–external-downloader-args #外部下载工具指定参数
-x 16 #表示进程数,aria2最高只能16进程
-k 1M #指定块的大小

使用了socks5代理的话在命令前面加上代理端口,使得速度达到最大化

1
youtube-dl -f [format code] --proxy 'socks5://127.0.0.1:10808' [url] --external-downloader aria2c --external-downloader-args "-x 16 -k 1M"

本文标题:youtube-dl的使用方法

文章作者:Pwner

发布时间:2020年09月13日 - 13:09

最后更新:2020年09月21日 - 16:09

原始链接:https://pwner.cn/posts/fa0684f3.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

Buy me a cup of coffee.