你不知道的You-Get 就是这么强势!

系统
You-Get是什么?相信有很多人,应该还不知道它的来历,其实它就是一款支持众多网站视频下载的神器,既可以在命令提示符中操作,也可以在Python代码中运行,跟现在的很多模块都一样。

[[417692]]

大家好,我是Python进阶者。

前言

You-Get是什么?相信有很多人,应该还不知道它的来历,其实它就是一款支持众多网站视频下载的神器,既可以在命令提示符中操作,也可以在Python代码中运行,跟现在的很多模块都一样,下面我们来看一下它的具体用法吧。

一、安装

你可以选择在命令提示符使用Pip安装You-Get模块,也可以下载You-Get应用程序并安装。

安装模块:

  1. pip install you-get 

安装好之后,我们可以先看看它的版本号:

它本身支持的下载视频网站是十分多的,如图所示:

可以看到,支持很多视频,Facebook也在其中之一。

二、基本用法

1.基本命令

通过在命令提示符中输入you-get ,我们来看看它有哪些的实用功能:

  1. 可选参数: 
  2.  -V, --version         打印版本并退出 
  3.  -h, --help            打印帮助消息并退出 
  4.  
  5.  即将运行的选项: 
  6.  (没有实际下载) 
  7.  -i, --info            打印提取信息 
  8.  -u, --url             打印提取url信息 
  9.  --json                打印提取以json格式的url 
  10.  
  11.  下载选项: 
  12.  -n, --no-merge                      不合并视频部分 
  13.  --no-caption                        不下载标题(字幕、歌词、danmaku…) 
  14.  -f, --force                         覆盖现有的文件 
  15.  --skip-existing-file-size-check     跳过现有文件没有检查文件大小 
  16.  -F STREAM_ID, --format STREAM_ID    视频格式设置为STREAM_ID 
  17.  -O FILE, --output-filename FILE     设置输出文件名              
  18.  -o DIR, --output-dir DIR            设置输出目录 
  19.  -p PLAYER, --player PLAYER          提取URl中的流并播放 
  20.  -c COOKIES_FILE, --cookies COOKIES_FILE  加载cookie.txt或cookies.sqlite                 
  21.  -t SECONDS, --timeout SECONDS       设置套接字超时                  
  22.  -d, --debug                         调试显示回溯和其它调试信息 
  23.  -I FILE, --input-file FILE          仅下载链接的视频不下载列表           
  24.  -P PASSWORD--password PASSWORD    设置视频密码访问密码 
  25.  -l, --playlist                      优先下载播放列表 
  26.  -a, --auto-rename                   自动重命名相同的名称不同的文件 
  27.  -k, --insecure                      忽略ssl错误 
  28.  
  29. 理选项: 
  30.  -x HOST:PORT, --http-proxy HOST:PORT            对下载使用HTTP代理 
  31.  -y HOST:PORT, --extractor-proxy HOST:PORT       只使用一个HTTP代理提取 
  32.  --no-proxy                                      从不使用代理 
  33.  -s HOST:PORT, --socks-proxy HOST:PORT           使用socket代理下载 

以上便是You-Get所有的命令行参数了,下面我们来具体看看吧。

2.查看视频信息

我们以哔哩哔哩某个视频为主:

我们先来看下这个视频的信息:

我们可以看到有很多信息,其中有视频的标题,格式,大小,清晰度等。除此之外,还可以查看Url的具体地址:

如果你觉得不够美观,还可以使用Json形式来显示,具体结果如下:

  1. C:\Program Files (x86)\DAUM\PotPlayer>You-Get --json https://www.bilibili.com/video/ 
  2. BV1N5411x7gf/ 
  3. site:                Bilibili 
  4. title:               无法超越的三个燃动作 
  5. stream: 
  6.     - format:        dash-flv480 
  7.       container:     mp4 
  8.       quality:       清晰 480P 
  9.       size:          2.8 MiB (2953276 bytes) 
  10.     # download-with: You-Get --format=dash-flv480 [URL] 
  11.  
  12. User Agent: Python-urllib/3.6 
  13. Real URLs: 
  14. http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/195842043/195842043-1-300 
  15. 32.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0GvT90W5JZMkX_YN0MvXg8 
  16. gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0B5tZlqNCNEto8BTrNvNC7 
  17. MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&deadline=1590653191&gen=p 
  18. layurl&os=cosbv&oi=0&trid=a6b3a442c80345628e84620cfaeb0043u&platform=pc&upsig=a3 
  19. 9c73b52d9972bf353dfcbf548d4fd3&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platfo 
  20. rm&mid=0&orderid=0,1&logo=80000000 
  21. http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/195842043/195842043-1-302 
  22. 80.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0GvT90W5JZMkX_YN0MvXg8 
  23. gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0B5tZlqNCNEto8BTrNvNC7 
  24. MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&deadline=1590653191&gen=p 
  25. layurl&os=cosbv&oi=0&trid=a6b3a442c80345628e84620cfaeb0043u&platform=pc&upsig=42 
  26. 32cc3b6b2efe8bc20b8b8b171ed2ce&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platfo 
  27. rm&mid=0&orderid=0,1&logo=80000000 
  28.  
  29. C:\Program Files (x86)\DAUM\PotPlayer>You-Get --json https://www.bilibili.com/vi 
  30. deo/BV1N5411x7gf/ 
  31.     "url""https://www.bilibili.com/video/BV1N5411x7gf/"
  32.     "title""无法超越的三个燃动作"
  33.     "site""Bilibili"
  34.     "streams": { 
  35.         "flv720": { 
  36.             "container""flv"
  37.             "quality""高清 720P"
  38.             "size": 2940926, 
  39.             "src": [ 
  40.                 "http://cn-hbsjz2-cmcc-bcache-12.bilivideo.com/upgcxcode/43/20/1 
  41. 95842043/195842043-1-64.flv?e=ig8euxZM2rNcNbNH7zUVhoMgnWuBhwdEto8g5X10ugNcXBlqNx 
  42. HxNEVE5XREto8KqJZHUa6m5J0SqE85tZvEuENvNC8xNEVE9EKE9IMvXBvE2ENvNCImNEVEK9GVqJIwqa 
  43. 80WXIekXRE9IMvXBvEuENvNCImNEVEua6m2jIxux0CkF6s2JZv5x0DQJZY2F8SkXKE9IB5QK==&deadl 
  44. ine=1590653296&gen=playurl&nbs=1&oi=1862376489&os=bcache&platform=pc&trid=f5a8a8 
  45. 93d80c4a94968417e759cd1378&uipk=5&upsig=cdf717ed1b6aad03f05ab9c430838e1d&uparams 
  46. =e,deadline,gen,nbs,oi,os,platform,trid,uipk&mid=0" 
  47.             ] 
  48.         }, 
  49.         "flv480": { 
  50.             "container""flv"
  51.             "quality""清晰 480P"
  52.             "size": 2969098, 
  53.             "src": [ 
  54.                 "http://cn-hbsjz2-cmcc-bcache-14.bilivideo.com/upgcxcode/43/20/1 
  55. 95842043/195842043-1-32.flv?e=ig8euxZM2rNcNbhVhbUVhoMzhwNBhwdEto8g5X10ugNcXBlqNx 
  56. HxNEVE5XREto8KqJZHUa6m5J0SqE85tZvEuENvNC8xNEVE9EKE9IMvXBvE2ENvNCImNEVEK9GVqJIwqa 
  57. 80WXIekXRE9IMvXBvEuENvNCImNEVEua6m2jIxux0CkF6s2JZv5x0DQJZY2F8SkXKE9IB5QK==&deadl 
  58. ine=1590653296&gen=playurl&nbs=1&oi=1862376489&os=bcache&platform=pc&trid=ecab99 
  59. 3f655241a28a3fba70c3f1b63c&uipk=5&upsig=2b86065e41b9105365206cfd9335ef01&uparams 
  60. =e,deadline,gen,nbs,oi,os,platform,trid,uipk&mid=0" 
  61.             ] 
  62.         }, 
  63.         "flv360": { 
  64.             "container""flv"
  65.             "quality""流畅 360P"
  66.             "size": 1419499, 
  67.             "src": [ 
  68.                 "http://cn-hbsjz2-cmcc-bcache-07.bilivideo.com/upgcxcode/43/20/1 
  69. 95842043/195842043-1-16.mp4?e=ig8euxZM2rNcNbRMhbUVhoM17wNBhwdEto8g5X10ugNcXBlqNx 
  70. HxNEVE5XREto8KqJZHUa6m5J0SqE85tZvEuENvNC8xNEVE9EKE9IMvXBvE2ENvNCImNEVEK9GVqJIwqa 
  71. 80WXIekXRE9IMvXBvEuENvNCImNEVEua6m2jIxux0CkF6s2JZv5x0DQJZY2F8SkXKE9IB5QK==&deadl 
  72. ine=1590653296&gen=playurl&nbs=1&oi=1862376489&os=bcache&platform=pc&trid=1bc6f0 
  73. ff38734f17af555299ba582fdc&uipk=5&upsig=fecb7363550829abd38ce95338bd9001&uparams 
  74. =e,deadline,gen,nbs,oi,os,platform,trid,uipk&mid=0" 
  75.             ] 
  76.         }, 
  77.         "dash-flv720": { 
  78.             "container""mp4"
  79.             "quality""高清 720P"
  80.             "src": [ 
  81.                 [ 
  82.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  83. 42043/195842043-1-30064.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  84. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  85. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  86. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  87. &platform=pc&upsig=bcc17b791e60d0c3af03187d7553559e&uparams=e,uipk,nbs,deadline, 
  88. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  89.                 ], 
  90.                 [ 
  91.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  92. 42043/195842043-1-30280.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  93. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  94. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  95. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  96. &platform=pc&upsig=bf8dd907f6798ea3521073e9026b0432&uparams=e,uipk,nbs,deadline, 
  97. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  98.                 ] 
  99.             ], 
  100.             "size": 2925104 
  101.         }, 
  102.         "dash-flv480": { 
  103.             "container""mp4"
  104.             "quality""清晰 480P"
  105.             "src": [ 
  106.                 [ 
  107.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  108. 42043/195842043-1-30032.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  109. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  110. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  111. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  112. &platform=pc&upsig=8058ecd313c5966e78fcd959494a6c0e&uparams=e,uipk,nbs,deadline, 
  113. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  114.                 ], 
  115.                 [ 
  116.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  117. 42043/195842043-1-30280.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  118. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  119. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  120. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  121. &platform=pc&upsig=bf8dd907f6798ea3521073e9026b0432&uparams=e,uipk,nbs,deadline, 
  122. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  123.                 ] 
  124.             ], 
  125.             "size": 2953276 
  126.         }, 
  127.         "dash-flv360": { 
  128.             "container""mp4"
  129.             "quality""流畅 360P"
  130.             "src": [ 
  131.                 [ 
  132.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  133. 42043/195842043-1-30016.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  134. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  135. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  136. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  137. &platform=pc&upsig=0fd2520985dd06dde73125c6791c09a0&uparams=e,uipk,nbs,deadline, 
  138. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  139.                 ], 
  140.                 [ 
  141.                     "http://upos-sz-mirrorcos.bilivideo.com/upgcxcode/43/20/1958 
  142. 42043/195842043-1-30216.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0 
  143. GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0 
  144. B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&dead 
  145. line=1590653296&gen=playurl&os=cosbv&oi=0&trid=f2500098d3e94126b32b826aa4e3618eu 
  146. &platform=pc&upsig=d8e2e202e8efd58c6674d14ecf8eb35e&uparams=e,uipk,nbs,deadline, 
  147. gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000" 
  148.                 ] 
  149.             ], 
  150.             "size": 1405370 
  151.         } 
  152.     }, 
  153.     "extra": { 
  154.         "referer""https://www.bilibili.com/video/BV1N5411x7gf/"
  155.         "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.3 
  156. 6 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36" 
  157.     } 

可以看到,所有的信息一览无余,可以说是很全面了。

3.下载指定格式的视频

我们喜欢哪个格式的视频就将它下载下来。比如我想下载Mp4格式的720p高清视频,可以这样做:

4.将视频下载到指定目录并修改文件名

如果你想指定下载的文件名和文件目录的话,可以这样操作:

5.播放在线视频

如果我们想要播放网页中的视频,那该怎么办了?答案也是相当简单,只需你在电脑上的本地视频播放器目录下(注:一定要是源程序位置,而不是快捷方式)打开Cmd窗口,然后输入命令,指定视频播放器播放网页视频即可:

6.Vip视频下载

You-Get最牛逼的技能就是它可以下载Vip视频,方法也很简单,直接使用You-Get 再加上Url即可。

7.弹幕文件

我们在观看哔哩哔哩的时候,可以看到一个视频会有很多弹幕,比如这种:

然后我们将这个视频下载下来,打开进行观看:

发现不像网页中有那么多弹幕,那么弹幕到哪里去了了。哦,原来它已经被我们下载下来了,随着Mp4文件一起下载下来了,只不过被放在了后缀为Xml的文件中,我们打开Xml文件看看:

在这里我要给大家推荐一个可以和哔哩哔哩一样可以看弹幕的视频播放器BililLocal。打开后选择原视频和Xml文件,

然后在选择播放按钮,

这样就可以播放带弹幕的视频了,是不是很有趣了。如果你想将弹幕文字保留下来,留作它用,你可以将它提取出来,至于提取方法嘛,自然是使用我们万能的正则表达式啦。

这样就得到了全部的弹幕了。

8.下载图片,音乐

You-Get除了可以下载视频,还有什么图片,音乐都可以下载的,只有我们想不到的,没有You-Get做不到的。

我们可以随便找一张图片,然后拿到它的Url地址,放到You-Get中下载。

随机选择一张图片,然后复制图片Url地址,然后进行下载:

可以看到,成功下载到了图片了。其实下载音乐也是很简单的,只需要把Url改为音频的Url即可,它可以进行自动解析,然后下载的。

9.批量下载

当我们在你哔哩哔哩看视频的时候,一个页面往往会有多个视频,这个时候我们一个一个的下载很显然太慢,可不可以一下子全部都下载了?答案当然是可以的。只需要使用--playlist参数即可,我们来看下:

随便打开一个Up主的视频,视频中必须带有多个章节视频,这样才方便我们测试。

可以看到已经下载到了第十二集了,速度可以说是相当的快了,最后,最后我们去桌面看看:

也是刚好下载了这么多。

10.代理下载

如果你访问过于频繁,Ip很有可能面临暂时被封的封的风险,这个时候就需要我们使用代理了,常用的免费代理网站有西刺,可以使用它上面的免费代理来进行视频的下载,但是它的免费代理可用时间是有限制的,而且不稳定。所以,自求多福吧,希望不会在视频下到一半就出现拒绝访问的尴尬场面。代理下载视频的格式也是有简单:

  1. You-Get -x host:post url 

11.通过Cookie文件看视频

有很多视频不是我们一进网站就可以看的,有的需要登陆,那么这个时候就需要用到Cookie。操作也很简单,只需要将网页中的Cookie信息写入到文本文件中,然后再用You-Get读取Cookie即可,用法如下:

  1. You-Get cookie.txt url 

三、总结

You-Get的确是一个神器,功能强大,而且十分方便,有了它,基本上下载方面的事儿通通都搞定了。

 

责任编辑:姜华 来源: Python爬虫与数据挖掘
相关推荐

2020-06-12 09:20:33

前端Blob字符串

2020-07-28 08:26:34

WebSocket浏览器

2010-08-23 09:56:09

Java性能监控

2022-10-13 11:48:37

Web共享机制操作系统

2009-12-10 09:37:43

2021-02-01 23:23:39

FiddlerCharlesWeb

2011-09-15 17:10:41

2018-07-10 11:33:58

计算器iPhone删除

2021-10-17 13:10:56

函数TypeScript泛型

2020-08-11 11:20:49

Linux命令使用技巧

2012-11-23 10:57:44

Shell

2015-06-19 13:54:49

2021-12-29 11:38:59

JS前端沙箱

2021-12-22 09:08:39

JSON.stringJavaScript字符串

2022-11-04 08:19:18

gRPC框架项目

2020-09-15 08:35:57

TypeScript JavaScript类型

2017-12-15 13:44:22

2021-11-16 08:51:29

Node JavaScript变量类型

2023-02-27 09:20:24

绝对定位CSS

2018-12-06 09:12:58

点赞
收藏

51CTO技术栈公众号