爬虫神器:一条命令下载《复仇者联盟3:无限战争》

听说你学会了爬虫,并且成功使用 urllib2/requests/scrapy 下载了想要的视频和音乐,但你有听过一条命令就能完成视频和音乐的下载呢?来看看今天带给你们的神器— you-get 吧!

1什么是 you-get

you-get 是一个小型的命令行程序,它提供便利的方式来下载网络上的媒体信息(视频,音频,图像)。you-get 目前支持的国内外网站有80+。国外的 YouTube、Twitter、Instagram 等等都是它支持的网站,国内支持的网站也有很多,如:bilibili、豆瓣、斗鱼、腾讯视频、优酷、芒果TV、快手、抖音、爱奇艺、酷狗音乐、秒拍、音乐Tai等等。最全的网站支持列表请见:https://github.com/soimort/you-get#supported-sites。

安装 you-get

想要安装 you-get,有以下依赖必须安装:

  • Python3

  • FFmpeg(强烈推荐) or Libav

  • (可选) RTMPDump

接下来在命令行中输入:

pip install you-get

3使用 you-get 下载视频

我们来演示下如何通过 you-get 下载视频,假如我们想要下载《复仇者联盟3:无限战争》的一个预告视频,地址为:

http://v.youku.com/v_show/id_XMzQ2OTMxMTQ4NA.html?spm=a2h0j.11185381.listitem_page1.5!10~A。

下载之前,我们可以使用 --info/-i 来查看所有可用画质与格式(注意:Windows 平台需要将 url 外面的单引号换成双引号):

$ you-get -i 'http://v.youku.com/v_show/id_XMzQ2OTMxMTQ4NA.html?spm=a2h0j.11185381.listitem_page1.5!10~A'site:                优酷 (Youku)title:               《复仇者联盟3:无限战争》北美正式预告片 十年布局,巅峰一役streams:             # Available quality and codecs    [ DEFAULT ] _________________________________    - format:        mp4hd3v2      container:     mp4      video-profile: 1080P      size:          29.9 MiB (31303414 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=hd3&ups_client_netip=712c9e06&utid=G4t3EzHLgQICAXEsngYS76wa&ccode=0502&psid=888175f6a5e54e15240fc4ff2a5a9f36&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718303&onOff=0&encr=0&ups_key=014c8160e58f685bde0d49447edc5ae4    # download-with: you-get --format=mp4hd3v2 [URL]    - format:        mp4hd2v2      container:     mp4      video-profile: 超清      size:          17.2 MiB (18035231 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=hd2&ups_client_netip=712c9e06&utid=G4t3EzHLgQICAXEsngYS76wa&ccode=0502&psid=888175f6a5e54e15240fc4ff2a5a9f36&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718303&onOff=0&encr=0&ups_key=014c8160e58f685bde0d49447edc5ae4    # download-with: you-get --format=mp4hd2v2 [URL]    - format:        mp4hd      container:     mp4      video-profile: 高清      size:          10.3 MiB (10777046 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=mp4&ups_client_netip=712c9e06&utid=G4t3EzHLgQICAXEsngYS76wa&ccode=0502&psid=888175f6a5e54e15240fc4ff2a5a9f36&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718303&onOff=0&encr=0&ups_key=014c8160e58f685bde0d49447edc5ae4    # download-with: you-get --format=mp4hd [URL]    - format:        3gphd      container:     mp4      video-profile: 渣清      size:          3.9 MiB (4101529 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=mp4&ups_client_netip=712c9e06&utid=G4t3EzHLgQICAXEsngYS76wa&ccode=0502&psid=888175f6a5e54e15240fc4ff2a5a9f36&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718303&onOff=0&encr=0&ups_key=014c8160e58f685bde0d49447edc5ae4    # download-with: you-get --format=3gphd [URL]    - format:        mp4sd      container:     mp4      video-profile: 标清      size:          5.7 MiB (6020728 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=flv&ups_client_netip=712c9e06&utid=G4t3EzHLgQICAXEsngYS76wa&ccode=0502&psid=888175f6a5e54e15240fc4ff2a5a9f36&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718303&onOff=0&encr=0&ups_key=014c8160e58f685bde0d49447edc5ae4    # download-with: you-get --format=mp4sd [URL]

标有DEFAULT 为默认画质。如果想要默认的画质,则直接使用以下命令下载:

$ you-get  'http://v.youku.com/v_show/id_XMzQ2OTMxMTQ4NA.html?spm=a2h0j.11185381.listitem_page1.5!10~A'site:                优酷 (Youku)title:               《复仇者联盟3:无限战争》北美正式预告片 十年布局,巅峰一役stream:    - format:        mp4hd3v2      container:     mp4      video-profile: 1080P      size:          29.9 MiB (31303414 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=hd3&ups_client_netip=712c9e06&utid=r4p3E1fqEX4CAXEsngYfsVgy&ccode=0502&psid=269429bb15c9f3bc56d9ad545f0835ae&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718195&onOff=0&encr=0&ups_key=3b6bfec46adf4747c607ed4ab4b37cc3    # download-with: you-get --format=mp4hd3v2 [URL]Downloading 《复仇者联盟3:无限战争》北美正式预告片 十年布局,巅峰一役.mp4 ... 100% ( 29.9/ 29.9MB) ├████████████████████████████████████████┤[1/1]    7 MB/s

如果想要下载标清画质,则可以根据提示 #download-with 使用以下命令来下载:

$ you-get --format=mp4sd 'http://v.youku.com/v_show/id_XMzQ2OTMxMTQ4NA.html?spm=a2h0j.11185381.listitem_page1.5!10~A'site:                优酷 (Youku)title:               《复仇者联盟3:无限战争》北美正式预告片 十年布局,巅峰一役stream:    - format:        mp4sd      container:     mp4      video-profile: 标清      size:          5.7 MiB (6020728 bytes)      m3u8_url:      http://pl-ali.youku.com/playlist/m3u8?vid=XMzQ2OTMxMTQ4NA%3D%3D&type=flv&ups_client_netip=712c9e06&utid=x4t3Ez7Y%2FgUCAXEsnga8QOC7&ccode=0502&psid=a0f83cea8f1d12b44077eb789c32c7a0&duration=143&expire=18000&drm_type=1&drm_device=7&ups_ts=1525718475&onOff=0&encr=0&ups_key=fa6e8812bd282935a8f011e5316a3158    # download-with: you-get --format=mp4sd [URL]Downloading 《复仇者联盟3:无限战争》北美正式预告片 十年布局,巅峰一役.mp4 ... 100% (  5.7/  5.7MB) ├████████████████████████████████████████┤[1/1]   11 MB/s

下载完成后,我们来看下下载后的视频截图:

其他常用设置参数

除了最基本的下载功能之外,you-get 还有很多其他的参数。

  • 使用 --force/-f 强行重下载. (注意: 将覆盖同名文件或临时文件!)

  • 使用 --output-dir/-o 设定路径, --output-filename/-O 设定输出文件名

  • 使用 --http-proxy/-x 为you-get设置HTTP代理

  • 如果需要登录以观看 (例如, 私密视频), 可能必须将浏览器cookie通过 --cookies/-c 加载入 you-get

更多关于 you-get 的使用方式请看:https://github.com/soimort/you-get。

猜你喜欢

转载自blog.csdn.net/weixin_41923961/article/details/80275213