[注意]要使用youtube-dl,你必须有一台不在我朝的服务器。

一. 安装youtube-dl(命令都是以centos6为例)

curl https://yt-dl.org/downloads/2016.04.19/youtube-dl -o /usr/local/bin/youtube-dl
chmod a+rx /usr/local/bin/youtube-dl
或者
wget https://yt-dl.org/downloads/2016.04.19/youtube-dl -O /usr/local/bin/youtube-dl
chmod a+rx /usr/local/bin/youtube-dl

安装好了以后,在命令行输入youtube-dl,按回车,就能够看到其使用说明了!

图1

二. 使用方法

# https://www.youtube.com/watch?v=ys7MlIt7-oQ 就是要下载的视频的URL
youtube-dl https://www.youtube.com/watch?v=ys7MlIt7-oQ

图2

用洋人的服务器下载youtube 的视频,那是相当的快。

ps.下载好的文件名中可能包含空格,我们可以使用命令for f in * *; do mv "f" "{f// /-}"; done把文件名中的空格替换为-号,以方便传输!

等下载完成以后我们可以使用bypy上传到百度网盘,或者用命令python -m SimpleHTTPServer 8080搭建一个临时http服务器把文件离线回来!

三. 下载方式

以运行python为例,进入下载好文件的目录中,然后执行之前提到的命令。

图3

如果没有错误发生,现在访问你的IP:8080就能看到文件列表了!

图4

接下来的事情就太简单了,复制下载链接,然后添加到迅雷的下载列表里就可以把文件取回来了,不过因为是从国外那边下载,所以速度可能会慢一点。

四. 一些参数

youtube-dl -h

-r, 限制最大下载速度 (e.g. 50K or 4.2M)
--yes-playlist  当你的下载链接是一个列表时,下载他.
--playlist-reverse   倒序下载列表
--write-sub   下载自带字幕
--write-auto-sub   下载自动生成的字幕(YouTube only)
-x, --extract-audio   转换为音频,依赖 ffmpeg or avconv and ffprobe or avprobe
--restrict-filenames     墙裂建议带上,避免文件名里出现 "&" 和空格

本文来自:https://blog.phpgao.com/download_youtube_via_cmd.html