youtube-dl 本地代理

youtube-dl是一个命令行程序,用于从YouTube网站下载视频。在国外的服务器上使用youtube-dl下载YouTube视频,没有什么问题。

但在本地虚拟机中使用--proxy时无效:

ERROR: Unable to download webpage...


因为shell中只支持http(s)代理,不支持socks5代理。因此需要使用http代理,然后转发到sssocks5代理上,这样youtube-dl的代理就没问题了。


1.安装Privoxy

privoxy的作用就是将shell中的http(s)代理转发到sssocks5代理上的

wget https://www.silvester.org.uk/privoxy/Sources/3.0.28%20%28stable%29/privoxy-3.0.28-stable-src.tar.gz
tar -xf privoxy-3.0.28-stable-src.tar.gz
cd privoxy-3.0.28-stable
autoheader
autoconf
./configure
make
useradd privoxy -r -s /usr/sbin/nologin
make install


privoxy需要创建一个用户,否则安装会有错误:

id: privoxy: no such user
******************************************************************
 WARNING! WARNING! installing config files as root!
 It is strongly recommended to run privoxy as a non-root user,
 and to install the config files as that user and/or group!
 Please read INSTALL, and create a privoxy user and group!
*******************************************************************
make: *** [install] Error 1


编译安装成功后,会提示配置文件路径:

Privoxy 3.0.28 stable installation succeeded!
The Privoxy configuration files have been installed in /usr/local/etc/privoxy


配置监听地址和转发地址

vim /usr/local/etc/privoxy/config
forward-socks5t / 192.168.0.102:1080 .
listen-address  0.0.0.0:8118


因为我本机Windows10 ss代理,虚拟机CentOS 7.5所有我配置的是局域网ip,同一台设备可以配置127.0.0.1localhost


保存退出,启动privoxy

/etc/init.d/privoxy start
Starting Privoxy, OK.
# 停止
# /etc/init.d/privoxy stop


2.启动ss,在选项设置中配置“允许来自局域网的连接”

1.png


3.再次尝试youtube-dl下载YouTube视频

找一个音乐视频,因为YouTube的视频音频流和视频流是独立分开的,当然也有整个的视频,但最好音质流和最好视频流是分开的,我要做的就是下载最好的

视频和音频然后合成1080P的视频。音乐视频就比较好做测试了。

2.png


[root@192 youtube]# youtube-dl --proxy 'http://127.0.0.1:8118/' -o '%(title)s.%(ext)s' https://www.youtube.com/watch?v=RLLOqUGfTCA
[youtube] RLLOqUGfTCA: Downloading webpage
[youtube] RLLOqUGfTCA: Downloading video info webpage
WARNING: unable to download video info webpage: ''
[download] Destination: 华晨宇《平凡之路》 -单曲纯享《歌手2018》第11期 Singer 2018【歌手官方频道】.f136.mp4
[download] 100% of 40.60MiB in 14:15
[download] Destination: 华晨宇《平凡之路》 -单曲纯享《歌手2018》第11期 Singer 2018【歌手官方频道】.f140.m4a
[download] 100% of 6.35MiB in 01:01
[ffmpeg] Merging formats into "华晨宇《平凡之路》 -单曲纯享《歌手2018》第11期 Singer 2018【歌手官方频道】.mp4"
Deleting original file 华晨宇《平凡之路》 -单曲纯享《歌手2018》第11期 Singer 2018【歌手官方频道】.f136.mp4 (pass -k to keep)
Deleting original file 华晨宇《平凡之路》 -单曲纯享《歌手2018》第11期 Singer 2018【歌手官方频道】.f140.m4a (pass -k to keep)


这样,代理下载就没什么问题了。

展开阅读全文