使用you-get下载视频网站视频或其他
使用you-get下载视频网站视频或其他
文/玄魂
目录
前言
很多时候随时随地在线看视频不是那么容易,尤其是YouTube的视频(你懂得),所以遇到好的视频下载下来还是有必要的。今天给大家介绍就是一款下载视频站视频的工具——yo-get。
官方网址:https://you-get.org/。
1.1 下载、安装
依赖
· Python 3
· (可选) RTMPDump
exe安装
在windows上使用该软件最方便的办法是下载exe文件,在该工具的github地址:https://github.com/soimort/you-get 找到release链接,当前链接为https://github.com/soimort/you-get/releases/tag/v0.4.486。

下载win32.exe。下载完成后直接命令行运行就可以了。

跨平台的安装和使用方式,可能是大部分码农更欢迎的,下面列举几种方式。
pip安装
如果你的电脑上安装Python3,可以使用pip安装。

Antigen安装
添加如下代码到你的.zshrc文件中即可:

Git 克隆源码
首先从github下载所有源文件。
$ git clone git://github.com/soimort/you-get.git
然后运行 ./setup.py install进行安装。
Homebrew 安装
此种方法只试用于Mac,运行如下命令:
$ brew install you-get
1.2 基本使用
下载视频网站视频
安装成功之后,就该大显身手的时候了。我在YouTube上看到一套《Hacking with Python》的视频,就拿它来做试验吧。复制该视频的URL:
https://www.youtube.com/watch?v=UVac47TtghQ&list=PL1A2CSdiySGLtKwqBnqj9BON6QQjWkP4n&index=1。
然后在命令行执行:
you-get-0.4.486-win32.exe -i https://www.youtube.com/watch?v=UVac47TtghQ&list=PL1A2CSdiySGLtKwqBnqj9BON6QQjWkP4n&index=1
使用-i参数列出详细的视频下载信息,供我们进一步选择。

从上图可以看到,程序列出了不同格式和质量的下载选项,并给出了下载方法。比如我这里下载mp4格式、1920*1080的视频,应该输入的命令为:
D:\工具\网络工具包>you-get-0.4.486-win32.exe --itag=137 https://www.youtube.com/watch?v=UVac47TtghQ&list=PL1A2CSdiySGLtKwqBnqj9BON6QQjWkP4n&index=1

you-get在下载视频的过程中会依赖ffmpeg对下载的视频进行合并或者转码。很多视频站的视频都是分成多段进行加载的,如果你不希望程序自动合并视频,可以添加--no-merge/-n参数进行控制。
好了,下载成功一个视频:

下载任何指定文件
是不是感觉很爽呢?当然除了视频资源,如果我们给定一个文件url,它都可以帮我们下载。

如果我们给一个随意的URL,you-get会整体分析该网页可下载的资源,但是这个功能目前还不是很完善。
利用google搜索并下载视频
如果传入的参数不是url,you-get会利用goolge进行搜索资源,并提示下载选项。没有给出足够资源列表供用户选择,个人感觉有些鸡肋。

中断和继续
下载过程中,使用Ctrl+C 可以中断下载,程序会保存一个临时文件,下次使用相同的下载参数下载文件的话,会从中断位置继续下载。
如果要强制重新下载,可以使用--force/-f 参数。
自定义下载文件路径和名称
使用--output-dir/-o参数可以指定文件保存的路径,使用--output-filename/-O参数来指定保存的文件名。例如:
$ you-get -o ~/Videos -O zoo.webm
'https://www.youtube.com/watch?v=jNQXAC9IVRw'
设置代理
使用--http-proxy/-x 参数为you-get指定http代理,默认情况下you-get会使用系统代理。如果不希望you-get使用任何代理,可以使用--no-proxy 参数来禁用。
加载cookie
很多网站是需要登录才可以访问视频内容的,比如很多在线教育网站。这个时候就需要我们提交cookie信息了,you-get支持使用--cookies/-c来提交cookie数据。cookie数据支持两种格式:
cookies.sqlite 和 cookies.txt。
1.3 小结
you-get是使用python编写的,学习python编程的朋友可以去看看源码,学习网页内容分析和下载的方法,同时也可以为它贡献代码,让这个工具更强大。

已经测试的网站列表,当然这不是全部,你可以自己去探索。
|
Site |
URL |
Videos? |
Images? |
Audios? |
|
YouTube |
✓ |
|||
|
|
✓ |
✓ |
||
|
VK |
✓ |
|||
|
Vine |
✓ |
|||
|
Vimeo |
✓ |
|||
|
Vidto |
✓ |
|||
|
Videomega |
✓ |
|||
|
Veoh |
✓ |
|||
|
Tumblr |
✓ |
✓ |
✓ |
|
|
TED |
✓ |
|||
|
SoundCloud |
✓ |
|||
|
|
✓ |
|||
|
MusicPlayOn |
✓ |
|||
|
MTV81 |
✓ |
|||
|
Mixcloud |
✓ |
|||
|
Metacafe |
✓ |
|||
|
Magisto |
✓ |
|||
|
Khan Academy |
✓ |
|||
|
JPopsuki TV |
✓ |
|||
|
Internet Archive |
✓ |
|||
|
|
✓ |
✓ |
||
|
InfoQ |
✓ |
|||
|
Imgur |
✓ |
|||
|
Heavy Music Archive |
✓ |
|||
|
Google+ |
✓ |
✓ |
||
|
Freesound |
✓ |
|||
|
Flickr |
✓ |
✓ |
||
|
FC2 Video |
✓ |
|||
|
|
✓ |
|||
|
eHow |
✓ |
|||
|
Dailymotion |
✓ |
|||
|
CBS |
✓ |
|||
|
Bandcamp |
✓ |
|||
|
AliveThai |
✓ |
|||
|
interest.me |
✓ |
|||
|
755 |
✓ |
✓ |
||
|
niconico |
✓ |
|||
|
163 |
✓ |
✓ |
||
|
56网 |
✓ |
|||
|
AcFun |
✓ |
|||
|
Baidu |
✓ |
✓ |
||
|
爆米花网 |
✓ |
|||
|
bilibili |
✓ |
|||
|
Dilidili |
✓ |
|||
|
豆瓣 |
✓ |
|||
|
斗鱼 |
✓ |
|||
|
Panda |
✓ |
|||
|
凤凰视频 |
✓ |
|||
|
风行网 |
✓ |
|||
|
iQIYI |
✓ |
|||
|
激动网 |
✓ |
|||
|
酷6网 |
✓ |
|||
|
酷狗音乐 |
✓ |
|||
|
酷我音乐 |
✓ |
|||
|
乐视网 |
✓ |
|||
|
荔枝FM |
✓ |
|||
|
秒拍 |
✓ |
|||
|
MioMio弹幕网 |
✓ |
|||
|
痞客邦 |
✓ |
|||
|
PPTV聚力 |
✓ |
|||
|
齐鲁网 |
✓ |
|||
|
QQ |
✓ |
|||
|
企鹅直播 |
✓ |
|||
|
阡陌视频 |
✓ |
|||
|
THVideo |
✓ |
|||
|
Sina |
✓ |
|||
|
Sohu |
✓ |
|||
|
天天动听 |
✓ |
|||
|
Tudou |
✓ |
|||
|
虾米 |
✓ |
|||
|
阳光卫视 |
✓ |
|||
|
音悦Tai |
✓ |
|||
|
Youku |
✓ |
|||
|
战旗TV |
✓ |
|||
|
央视网 |
✓ |
|||
|
花瓣 |
✓ |
|||
|
Naver |
✓ |
|||
|
芒果TV |
✓ |
关注我的微信订阅号,持续为您推送优质内容:

我的知乎:https://www.zhihu.com/people/xuan-hun
使用you-get下载视频网站视频或其他的更多相关文章
- 利用Selenium和Browsermob批量嗅探下载Bilibili网站视频
Rerence: http://www.liuhao.me/2016/09/20/selenium_browsermob_sniff_bilibili_video/ 日常生活中,用电脑看视频是非常频繁 ...
- 爬虫练习二:GUI+下载百思不得姐网站视频
环境 python2.7 pycharm 课题:Python爬取视频(桌面版)---爬虫,桌面程序应用 优点:语法简洁,入门快,代码少,开发效率高,第三方库 1.图形用户界面---GUI 2.爬虫,爬 ...
- 下载B站、秒拍等视频网站视频
需要一个FVD Downloader(插件) 安装过程很简单,会浏览器安装插件的就不多说了!
- python获取某视频网站视频
还是老生常谈的操作 import requests import os from bs4 import BeautifulSoup from urllib.parse import urljoin h ...
- 转:最简单的视频网站(JavaEE+FFmpeg)
本文记录一个最简单的视频网站系统.此前做过一些基于JavaEE中的 SSH (Strut2 + Spring + Hibernate)的网站系统,但是一直没有做过一个视频网站系统,所以就打算做一个&q ...
- 最简单的视频网站(JavaEE+FFmpeg)
本文记录一个最简单的视频网站系统.此前做过一些基于JavaEE中的SSH (Strut2 + Spring + Hibernate)的网站系统,但是一直没有做过一个视频网站系统,所以就打算做一个&qu ...
- 最简单的基于JavaEE和FFmpeg的视频网站
最简单的视频网站 Simplest Video Website 雷霄骅 Lei Xiaohua leixiaohua1020@126.com 中国传媒大学/数字电视技术 Communication U ...
- 支持n多视频网站的下载,推荐 you-get
其实刚开始是想下载youtube视频, 网上找了下 其中之一:http://jingyan.baidu.com/article/39810a23d2deb2b637fda66c.html 访问一个在线 ...
- python爬取视频网站m3u8视频,下载.ts后缀文件,合并成整视频
最近发现一些网站,可以解析各大视频网站的vip.仔细想了想,这也算是爬虫呀,爬的是视频数据. 首先选取一个视频网站,我选的是 影视大全 ,然后选择上映不久的电影 “一出好戏” . 分析页面 我用的是c ...
随机推荐
- Javascript 截取2位小数
今天在处理数据时,前台界面金额需要保留两位小数,所以只能使用Javascript 来进行截取. var regex = /([0-9]+\.[0-9]{2})[0-9]*/; var localMon ...
- 解决ORA-00824: cannot set sga_target due to existing
今天Linux服务器机子重启了下,Oracle启动不起来,提示:解决ORA-00824: cannot set sga_target due to existing 看了很多解决方法,发现下面这个特别 ...
- UIActivityIndicatorViewStyle
UIActivityIndicatorView *indicatorV = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyl ...
- Java EE 和 Java Web
什么是 Java Web 应用程序? Java Web 应用程序会生成包含各种类型的标记语言(HTML 和 XML 等)和动态内容的交互式 Web 页.它通常由 Web 组件组成(如 JavaServ ...
- PHP对redis操作详解【转】
/*1.Connection*/ $redis = new Redis(); $redis->connect('127.0.0.1',6379,1);//短链接,本地host,端口为6379,超 ...
- Struts2之提交对象数组至后台
struts2中有许多很好的特性,比如在设置好getter和setter方法后,加上前端的匹配设置,后台即可自动将前端输入的数据转换为后台的相应的对象. 如现在传入一个Person类的对象,其中Per ...
- Django提交POST表单“CSRF verification failed. Request aborted”问题的解决
1.环境 python 3.4 Django 1.7 Visual Studio 2015 PTVS 2.问题 提交表单,出现以下错误: CSRF verification failed. Reque ...
- WinForm程序全局捕捉异常处理办法
如何全局捕捉Winform程序异常呢,当然是从程序启动入口的Program类下的Main()方法定义了,下面看下这个类怎么写的吧 static class Program { static strin ...
- nodejs之异步思想
nodejs的精髓就是"异步",但什么是异步呢?我们来看一个例子: var start =new Date; setTimeout(function(){ var end =new ...
- [Linux] xargs
xargs 命令可以将一个命令的输出,作为另一个命令的输入! 这里听来好像是管道的功能,之所以有xargs是因为有的命令不知吃管道,这时xargs就派上用场了! 具体的方法是:前一个命令的输出会使用空 ...