一:前言
爬虫中工作需要就把这个教程完成了,分享出来让更多人使用。youtube-dl是一个命令行程序从Youtube和一些更多的网站下载视频。它需要Python(2.6,2.7,或3.2 +),Linux,Mac Windows都可以使用。youtube-dl可以下载youtube上高清的资源,如果遇到喜欢的视频就可以利用这个工具进行下载。
二:shadowsocks代理安装
首先确认当前安装环境,默认是ubuntu的python2环境,如果想使用例如anaconda等第三方环境,需激活环境后安装ss ,这样就可以安装到不同的python环境中。
sudo pip install shadowsocks # 安装ss
vi /etc/shadowsocks.json # 修改配置文件
修改按照下面的截图示例即可,填入自己的ss代理服务器帐号和密码。(如果没有就可以搜索一下网上免费的ss代理帐号)
开启ss代理:
sslocal -c /etc/shadowsocks.json
开启后连接情况:
到这里为止我们可以使用ss,配合浏览器的相关设置后浏览器可以使用ss代理浏览相关网站,但是终端无法使用ss代理.
下面两个方法让终端使用ss代理
三:安装proxychains 用于终端https代理
apt-get install proxychains # 安装proxychains
vi /etc/proxychains.conf # 修改配置文件
将最后一行改成:
socks5 127.0.0.1 1080
之后就可以使用proxychains来做https的转接了,比如;
proxychains curl ip.cn #查看当前ip
proxychains wget https://www.youtube.com/ # 测试
四:youtube-dl安装
官网: rg3.github.io/youtube-dl/download.html
安装:
sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
youtube-dl 不要使用pip 或者apt-get 安装,因为这样安装的版本可能会比较低,跑程序的时候就会出错。
简单使用:
youtube-dl [url] # 下载指定链接的视频
youtube-dl --write-sub [url] # 下载指定链接的字幕
更多功能查看:
youtube-dl -h # 帮助
详细帮助中文说明:http://www.cnblogs.com/yaoz/p/6870187.html
五:终端http代理的使用
上面youtube-dl需要终端能https代理如果使用http代理就能不到youtube视频资源,但是如果只要终端代理就可以不用proxychains。
下面是polipo http代理的安装使用:
sudo apt-get install polipo # 安装
cd /etc/polipo/
sudo chmod 777 config # 为config文件申请最高权限
vi /etc/polipo/config # 打开进行编辑
# 按照下面代码修改相应内容,如果没有鸠呃加入下面的代码:
socksParentProxy = "localhost:1080"
socksProxyType = socks5
logLevel=4
关闭启动:
sudo service polipo stop
sudo service polipo start
简单使用:
http_proxy=http://localhost:8123 curl ip.cn
这样太麻烦,简单修改相关设置让操作更方便:
vi .bashrc
# 打开后加入下面这句话:
lias dl="http_proxy=http://localhost:8123"
# 关闭保存后执行:
source ~/.bashrc
# 以后这样使用:
dl curl ip.gs
# 下面是长时间终端使用
export http_proxy=http://localhost:8123 # 当前终端使用代理
unset http_proxy # 当前终端取消代理
六:总结
youtube只是个工具,如果下载单独的几个视频或者下载几个列表的视频还算方便的。但是如果要大规模抓取youtube的资源这样事不够的,我们需要写shell脚本或者python脚本。也很简单,根据需求写脚本开启YouTube抓取之旅。
网友评论