❤致敬所有与病毒战斗的可爱的工作者!

下载youtube高分辨率视频,youtube-dl的简单使用

2018-12-19 19:06:01

youtube-dl是一个专门用来下载视频的命令行工具,它免费、开源,轻便高控制。命令行工具简单来说就是没有GUI(图形用户界面)的工具,需要以命令加参数的方式使用。

youtube-dl是跨平台的,在Windows、Linux、MacOS上均可使用。下面以Windows 10系统为例,简单介绍一下它的使用方法。

在Windows系统中,你只需要下载官方页面上提供的一个名为 youtube-dl.exe 的可执行文件,将它放到任意目录。

下载可执行文件如果放置在系统system32等处于环境变量中的目录,可以忽略此步骤。若存放于其它任意目录,如上图所示的 D:\Tools\ydl,右键点击 此电脑 - 属性 - 高级系统设置,选择高级选项卡,点击“环境变量”按钮。也可以在开始菜单输入 环境变量 搜索,点击“编辑系统环境变量”打开。

打开环境变量设置选择用户变量下的Path,点击编辑按钮。

编辑Path变量点击“新建”按钮,添加存放youtube-dl.exe文件的目录,点击确定。

添加目录Windows其它版本的系统,可以在现有变量后直接输入目录,以分号(;)隔开。

下面可以正式开始使用youtube-dl了,打开命令提示符(在开始菜单或者运行中输入 cmd 打开即可)。输入命令加参数,比如下面的命令:

youtube-dl -o "d:/youtube-dl-videos/xstui.mp4" "https://www.youtube.com/watch?v=rhjBXnEFKQs"

这是个最简单的命令,其中 -o 参数指定存放的目录及文件名,最后面为视频所在页面的链接。

但这个命令运行是不能成功的,因为youtube在我们国内无法直接访问,需要使用代理,我们可以使用 --proxy 参数来指定代理地址,如 --proxy 127.0.0.1:1080,127.0.0.1为代理IP地址,1080为代理端口,如果是socks5代理,需要如下形式,--proxy "socks5://127.0.0.1:1080/"。

youtube-dl -o "d:/youtube-dl-videos/xstui.mp4" --proxy "socks5://127.0.0.1:1080/" "https://www.youtube.com/watch?v=rhjBXnEFKQs"

文件名称是我们手动指定的固定名称xstui.mp4,但最好以它本来的标题来命名,youtube-dl提供了很多模板参数,格式为 %(模板名)s或者%(模板名)d,s代表字符串,d代表数字。

youtube-dl -o "d:/youtube-dl-videos/%(title)s - %(resolution)s.%(ext)s" --proxy "socks5://127.0.0.1:1080/" "https://www.youtube.com/watch?v=rhjBXnEFKQs"

上述命令中,%(ext)s代表视频格式,%(title)s表示标题文本,%(resolution)s表示分辨率信息,以这些信息的组合命名。

在命令提示符中运行上述命令,会显示基本的下载信息,100%完成后可以看到文件。

下载完成后的文件如果每次下载都要输入如此多的参数,岂不是很麻烦?youtube-dl提供了配置文件的功能,可以在配置文件中一次性写入常用的参数,简化输入的命令。

在Windows系统中,youtube-dl默认的配置文件的路径为 %appdata%\youtube-dl\config.txt,当然,youtube-dl目录和config.txt文件需要我们手动创建,打开 %appdata% 目录,依次创建即可。(也可以在命令中使用参数 --config-location 目录路径,手动指定配置文件的目录)

创建配置文件编辑config.txt,将常用的参数都写入其中,每行写入一个参数,如

--proxy "socks5://127.0.0.1:1080/"
-o "d:/youtube-dl-videos/%(title)s - %(resolution)s.%(ext)s"
-f bestvideo+bestaudio/best
--no-playlist

在配置中指定了代理,存放的路径及文件名格式,--no-playlist表示不下载播放列表,默认设置下,如果给youtube-dl一个播放列表的链接,它会下载列表,如果仅仅只希望下载当前列表正在播放的视频,可以使用此参数。

大多数视频都有不同的清晰度供选择,-f 参数可以指定视频质量,best代表单文件最好质量的视频,单文件表示视频和音频在同一个文件中。在youtube上,1080p以及4k视频都是音频视频分离的,所以如果希望下载更高清晰度的视频,可以使用bestvideo+bestaudio。

bestvideo+bestaudio/best表示如果没有bestvideo+bestaudio,就下载best质量的视频。

现在只需在命令提示符中输入如下命令,视频就会按我们在配置文件中输入的参数下载。

youtube-dl "https://www.youtube.com/watch?v=rhjBXnEFKQs"

bestvideo+bestaudio需要使用ffmpeg或者avconv来合并视频和音频,如果没有,你将得到分离的视频文件和音频文件。

下面介绍让youtube-dl使用ffmpeg自动合并的方法。

下载ffmpeg的压缩包,解压到任意目录,进入ffmpeg目录的bin文件夹,找到ffmpeg.exe文件。

找到ffmpeg.exe文件将ffmpeg.exe和ffprobe.exe文件放到youtube-dl.exe文件所在的目录中,让它们处于同一目录。

将ffmpeg.exe移动至youtube-dl.exe所在的目录也可以直接将ffmpeg的bin目录添加到环境变量中,这样就无需操作文件。

无需其它操作,以后在youtube上下载1080p以上清晰度的视频时,youtube-dl会自动执行合并。

4k分辨率视频如果因为网络原因第一次下载失败了也没关系,继续执行同一命令,能够接着下载。

youtube-dl有非常多的参数,如视频串流、更多的模板、设置分辨率/文件大小等条件、播放列表的下载设置、登录下载等等,可以在此链接查看所有信息:https://github.com/rg3/youtube-dl/blob/master/README.md#readme

youtube-dl并不是只支持youtube站点的视频下载,具体的支持列表可以查看此页面:http://rg3.github.io/youtube-dl/supportedsites.html

youtube-dl下载地址:https://github.com/rg3/youtube-dl/releases

ffmpeg Windows及Mac平台下载:https://ffmpeg.zeranoe.com/builds/

ffmpeg Linux平台下载:https://www.ffmpeg.org/download.html#build-linux

若页面无法打开,需要使用网络代理。

本文链接 : https://www.xstui.com/read/700