大家在各大视频站看片的时候,可能会遇到在线观看慢、广告比视频还长、要搭梯子等让人膈应的麻烦事。如果可以把视频都下载下来,甚至自己搭建个在线播放,岂不美哉。
今天给大家介绍款下片神器 youtube-dl,支持几百个视频站的视频下载。比如我们熟悉的哔哩哔哩、YouTube、优酷、爱奇艺、各种 pr*nhub、斗鱼等直播平台、酷我等音乐平台,完整列表参考 http://rg3.github.io/youtube-dl/supportedsites.html。
接下来介绍下 youtube-dl 的安装使用过程及在各大视频站下载的测试结果。总的来说,安装使用过程还是很简单的。
youtube-dl 搭建过程
我是在自己的 vps 上使用的,基于 linux 系统,因为是用来下载存放视频的,建议选择大带宽大磁盘的主机,如virmach的大盘鸡还不错,详细参考:[大盘鸡]适合搭建网盘、存储性应用的大磁盘、大带宽 VPS 主机推荐
由于个人习惯原因,我用的 ubuntu14.04。先安装 youtube-dl。执行以下命令,安装很快,中途也没出现问题。
wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl chmod a+rx /usr/local/bin/youtube-dl
安装完后,试用 youtube-dl 命令,检查是否安装正确。
$ youtube-dl -h # 帮助 $ youtube-dl --list-extractors # youtube 支持下载网站列表
下载 YouTube 视频
比如一个 youtube 视频地址为 https://www.youtube.com/watch?v=2Yt6raj-S1M
首先查看该视频有哪些格式
$ youtube-dl -F https://www.youtube.com/watch?v=2Yt6raj-S1M
我们下载编号为 18,格式为 mp4,分辨率为 640*360 的视频
youtube-dl -f 18 https://www.youtube.com/watch?v=2Yt6raj-S1M
再下载字幕和视频
$ youtube-dl –write-sub https://www.youtube.com/watch?v=2Yt6raj-S1M
视频会直接下载到当前目录下,就是这么简单。
下载 youbute 的 1080P 高清视频
另外,通过 youtube-dl 下载 youbute 的 1080P 以上的视频需要额外安装 ffmpeg 来下载音频。
安装 ffmpeg
wget http://www.ffmpeg.org/releases/ffmpeg-3.3.3.tar.gz tar -zxvf ffmpeg-3.3.3.tar.gz cd ffmpeg-3.3.3 ./configure make make install
这时候就需要将音频与视频同时下载,ffmpeg 会自动合成音频和视频。
youtube-dl -f 18+140 https://www.youtube.com/watch?v=2Yt6raj-S1M
下载其他优酷、pr*nhub 视频
亲测以上的方法均适用于优酷、pr*nhub,至于视频地址就是播放视频时的浏览器地址。
其他更好的玩法
以上步骤只是简单的教大家下载各大视频站的视频,结合这个思路其实有更多玩法和优化的地方,看哪种方式大家更喜欢,
1 批量下载视频,可以通过–batch-file 选项批量下载,也可以用 python 脚本调用 YouTube-dl 实现批量下载
2 实现在线播放,当文件都下载到 vps 后,可以简单的搭建一个目录列表系统用来在线播放,如 h5ai。参考H5ai — 简约优雅的目录列表程序,支持在线播放
3 如果想直接下载到本地 PC 上也可以。Youtube-dl 支持 windows 系统,用法一样。在下载国外视频时通过—proxy 选项加上代理即可。