美文网首页Python爬虫服务器,后端,linux爬虫专题
ubuntu终端内使用youtube-dl下载视频详细教程

ubuntu终端内使用youtube-dl下载视频详细教程

作者: 梅花鹿数据rieuse | 来源:发表于2017-08-03 14:53 被阅读314次

    一:前言

    爬虫中工作需要就把这个教程完成了,分享出来让更多人使用。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抓取之旅。

    相关文章

      网友评论

        本文标题:ubuntu终端内使用youtube-dl下载视频详细教程

        本文链接:https://www.haomeiwen.com/subject/xrlplxtx.html