使用youtube-dl下载youtube中的视频
[注意]要使用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,按回车,就能够看到其使用说明了!
二. 使用方法
# https://www.youtube.com/watch?v=ys7MlIt7-oQ 就是要下载的视频的URL
youtube-dl https://www.youtube.com/watch?v=ys7MlIt7-oQ
用洋人的服务器下载youtube 的视频,那是相当的快。
ps.下载好的文件名中可能包含空格,我们可以使用命令for f in * *; do mv "f" "{f// /-}"; done把文件名中的空格替换为-号,以方便传输!
等下载完成以后我们可以使用bypy上传到百度网盘,或者用命令python -m SimpleHTTPServer 8080搭建一个临时http服务器把文件离线回来!
三. 下载方式
以运行python为例,进入下载好文件的目录中,然后执行之前提到的命令。
如果没有错误发生,现在访问你的IP:8080就能看到文件列表了!
接下来的事情就太简单了,复制下载链接,然后添加到迅雷的下载列表里就可以把文件取回来了,不过因为是从国外那边下载,所以速度可能会慢一点。
四. 一些参数
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 墙裂建议带上,避免文件名里出现 "&" 和空格