来源于:https://github.com/soimort/you-get/wiki/%E4%B8%AD%E6%96%87%E8%AF%B4%E6%98%8E

You-Get 乃一小小哒命令行程序,提供便利的方式,下载网络上的富媒体信息。

利用you-get下载这个网页的视频:

$ you-get http://www.fsf.org/blogs/rms/20140407-geneva-tedx-talk-free-software-free-society
Site: fsf.org
Title: TEDxGE2014_Stallman05_LQ
Type: WebM video (video/webm)
Size: 27.12 MiB (28435804 Bytes) Downloading TEDxGE2014_Stallman05_LQ.webm ...
100.0% ( 27.1/27.1 MB) ├████████████████████████████████████████┤[1/1] 12 MB/s

为什么你要好好的用You-get:

  • 你欢喜于互联网上的富媒体内容,并为个人寻欢而储存
  • 你喜悦观看的视频,然而不得保存;对个人设备无从控制,此乃违背开放互联网之行为
  • 你寻求解脱于闭源软件或JavaScript代码,并禁止Flash运行
  • 你为黑客精神与自由软件而欣喜

you-get之功用:

  • 下载流行网站之音视频,例如YouTube, Youku, Niconico,以及更多. (查看完整支持列表)
  • 于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告
  • 下载您喜欢网页上的图片
  • 下载任何非HTML内容,例如二进制文件

心动? 现在安装 并 查看使用范例.

使用Python编程?敬请查看 源代码 并fork!

安装

绪论

以下乃必要依赖,需要单独安装,除非于Windows下使用预包装包:

选项 1: 通过pip安装

you-get之官方版本通过PyPI分发, 可从PyPI镜像中通过pip 包管理器安装. 须知您务必使用版本3的pip:

$ pip3 install you-get

选项 2: 使用预装包(仅供Windows)

exe (单独文件) 或 7z (包括所有依赖) 可从https://github.com/soimort/you-get/releases/latest 下载.

选项 3: 于GitHub下载

您可选择稳定版 (与PyPI最新版等同) 或 开发版 (更多的热补丁与不稳定功能)的you-get. 解压并将含有you-get的目录加入PATH.

或者, 运行

$ make install

以安装you-get 于永久路径.

选项 4: Git clone

即使您不常使用Python,作为开发者,也请使用此方法。

$ git clone git://github.com/soimort/you-get.git

将目录加入 PATH, 或运行 make install 以安装you-get 于永久路径.

升级

考虑到 you-get 安装方法之差异, 请使用:

$ pip3 install --upgrade you-get

或下载最新更新:

$ you-get https://github.com/soimort/you-get/archive/master.zip

开始

下载视频

当观赏感兴趣之视频,您可以使用 --info/-i 以查看所有可用画质与格式、s:

$ you-get -i 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
site: YouTube
title: Me at the zoo
streams: # Available quality and codecs
[ DEFAULT ] _________________________________
- itag: 43
container: webm
quality: medium
size: 0.5 MiB (564215 bytes)
# download-with: you-get --itag=43 [URL] - itag: 18
container: mp4
quality: medium
# download-with: you-get --itag=18 [URL] - itag: 5
container: flv
quality: small
# download-with: you-get --itag=5 [URL] - itag: 36
container: 3gp
quality: small
# download-with: you-get --itag=36 [URL] - itag: 17
container: 3gp
quality: small
# download-with: you-get --itag=17 [URL]

标有DEFAULT 为默认画质。如认同,可下载:

$ you-get 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
site: YouTube
title: Me at the zoo
stream:
- itag: 43
container: webm
quality: medium
size: 0.5 MiB (564215 bytes)
# download-with: you-get --itag=43 [URL] Downloading zoo.webm ...
100.0% ( 0.5/0.5 MB) ├████████████████████████████████████████┤[1/1] 7 MB/s Saving Me at the zoo.en.srt ...Done.

(如YouTube视频带有字幕,将被一同下载,以SubRip格式保存.)

或,如您希望其他格式(mp4),请使用其他提示选项:

$ you-get --itag=18 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

注意:

  • 目前,格式选择没有大规模铺开;默认选项为最高画质.
  • ffmpeg为必要依赖,以下载流式视频以及合并分块视频(例如,类似Youku), 以及YouTube的1080p或更高分辨率.
  • 如不希望you-get合并视频,使用--no-merge/-n.

下载其他内容

如你有URL,可以直接使用:

$ you-get https://stallman.org/rms.jpg
Site: stallman.org
Title: rms
Type: JPEG Image (image/jpeg)
Size: 0.06 MiB (66482 Bytes) Downloading rms.jpg ...
100.0% ( 0.1/0.1 MB) ├████████████████████████████████████████┤[1/1] 127 kB/s

或者, you-get将自动检查网页,下载一切有可能感兴趣的内容:

$ you-get http://kopasas.tumblr.com/post/69361932517
Site: Tumblr.com
Title: kopasas
Type: Unknown type (None)
Size: 0.51 MiB (536583 Bytes) Site: Tumblr.com
Title: tumblr_mxhg13jx4n1sftq6do1_1280
Type: Portable Network Graphics (image/png)
Size: 0.51 MiB (536583 Bytes) Downloading tumblr_mxhg13jx4n1sftq6do1_1280.png ...
100.0% ( 0.5/0.5 MB) ├████████████████████████████████████████┤[1/1] 22 MB/s

注意:

  • 此功能为测试性,远未完成。对于类似Tumblr和Blogger的大图有效,但是没有办法为所有网站建立通用格式.

在Google Videos搜索并下载

you-get可以吃任何东西. 如果不是合法的URL, you-get将在Google查找并下载最相关视频. (可能不是最心仪的,但是很有可能)

$ you-get "Richard Stallman eats"

暂停与恢复下载

可以使用Ctrl+C 暂停下载.

临时的.download文件将保存于输出目录。下次使用you-get传入相同参数时,下载将从上次继续开始. 如果下载已经完成 (临时的.download 扩展名消失), you-get将忽略下载.

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

设置输出文件名或路径

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

$ you-get -o ~/Videos -O zoo.webm 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

提示:

  • 如果原视频标题含有与系统不兼容字符,十分有效.
  • 也可以帮助使用脚本批量下载于指定目录和文件名.

代理设置

使用 --http-proxy/-xyou-get设置HTTP代理:

$ you-get -x 127.0.0.1:8087 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

然而系统代理 (即系统变量http_proxy) 自动使用. 使用--no-proxy强行关闭.

提示:

  • 如果经常使用代理 (网络封锁了部分网站), 考虑将you-get和 proxychains 一同使用,并设置alias you-get="proxychains -q you-get" (于命令行).
  • 对于某些网站(例如Youku), 如果你需要下载仅供中国大陆观看的视频, 可以使用 --extractor-proxy/-y单独为解析器设置代理. 可以使用 -y proxy.uku.im:8888 (鸣谢: Unblock Youku 项目).

观看视频

使用 --player/-p 将视频喂进播放器, 例如 mplayer 或者 vlc,而不是下载:

$ you-get -p vlc 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

或者你想在浏览器中观看而不希望看广告或评论区:

$ you-get -p chromium 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

提示:

  • 可以使用 -p 开启下载工具,例如 you-get -p uget-gtk 'https://www.youtube.com/watch?v=jNQXAC9IVRw', 虽然有可能不灵.

加载cookie

并非所有视频可供任何人观看。如果需要登录以观看 (例如, 私密视频), 可能必须将浏览器cookie通过--cookies/-c 加载入 you-get.

注意:

  • 目前我们支持两种cookie格式:Mozilla cookies.sqlite 和 Netscape cookies.txt.

复用解析数据

使用 --url/-u 获得页面所有可下载URL列表. 使用 --json以获得JSON格式.

警告:

  • 目前此功能未定型,JSON格式未来有可能变化.

支持网站

网站 URL 视频? 图像? 音频?
YouTube https://www.youtube.com/    
Twitter https://twitter.com/  
VK http://vk.com/    
Vine https://vine.co/    
Vimeo https://vimeo.com/    
Vidto http://vidto.me/    
Veoh http://www.veoh.com/    
Tumblr https://www.tumblr.com/
TED http://www.ted.com/    
SoundCloud https://soundcloud.com/    
Pinterest https://www.pinterest.com/    
MusicPlayOn http://en.musicplayon.com/    
MTV81 http://www.mtv81.com/    
Mixcloud https://www.mixcloud.com/    
Metacafe http://www.metacafe.com/    
Magisto http://www.magisto.com/    
Khan Academy https://www.khanacademy.org/    
JPopsuki TV http://www.jpopsuki.tv/    
Internet Archive https://archive.org/    
Instagram https://instagram.com/  
Heavy Music Archive http://www.heavy-music.ru/    
Google+ https://plus.google.com/  
Freesound http://www.freesound.org/    
Flickr https://www.flickr.com/  
Facebook https://www.facebook.com/    
eHow http://www.ehow.com/    
Dailymotion http://www.dailymotion.com/    
CBS http://www.cbs.com/    
Bandcamp http://bandcamp.com/    
AliveThai http://alive.in.th/    
interest.me http://ch.interest.me/tvn    
755
ナナゴーゴー
http://7gogo.jp/  
niconico
ニコニコ動画
http://www.nicovideo.jp/    
163
网易视频
网易云音乐
http://v.163.com/
http://music.163.com/
 
56网 http://www.56.com/    
AcFun http://www.acfun.tv/    
Baidu
百度贴吧
http://tieba.baidu.com/  
爆米花网 http://www.baomihua.com/    
bilibili
哔哩哔哩
http://www.bilibili.com/    
Dilidili http://www.dilidili.com/    
豆瓣 http://www.douban.com/    
斗鱼 http://www.douyutv.com/    
凤凰视频 http://v.ifeng.com/    
风行网 http://www.fun.tv/    
iQIYI
爱奇艺
http://www.iqiyi.com/    
激动网 http://www.joy.cn/    
酷6网 http://www.ku6.com/    
酷狗音乐 http://www.kugou.com/    
酷我音乐 http://www.kuwo.cn/    
乐视网 http://www.letv.com/    
荔枝FM http://www.lizhi.fm/    
秒拍 http://www.miaopai.com/    
MioMio弹幕网 http://www.miomio.tv/    
痞客邦 https://www.pixnet.net/    
PPTV聚力 http://www.pptv.com/    
齐鲁网 http://v.iqilu.com/    
QQ
腾讯视频
http://v.qq.com/    
阡陌视频 http://qianmo.com/    
Sina
新浪视频
微博秒拍视频
http://video.sina.com.cn/
http://video.weibo.com/
   
Sohu
搜狐视频
http://tv.sohu.com/    
天天动听 http://www.dongting.com/    
Tudou
土豆
http://www.tudou.com/    
虾米 http://www.xiami.com/    
阳光卫视 http://www.isuntv.com/    
音悦Tai http://www.yinyuetai.com/    
Youku
优酷
http://www.youku.com/    
战旗TV http://www.zhanqi.tv/lives    
央视网 http://www.cntv.cn/    

对于不在列表的网站,通用解析器将寻找并下载感兴趣之内容.

已知问题

如果 you-get 出现问题,不要惊慌. (是的,问题一直存在!)

看看是不是在 https://github.com/soimort/you-get/wiki/Known-Bugs里面, 搜索 开放Issue. 如果没人报告,开个新issue, 加上详细的命令行输出.

参与我们

使用Gitter #soimort/you-get (如何为Gitter 设置IRC客户端 ). 如果是个关于 you-get 的小问题, 在这里问.

我们欢迎各种pull requestse. 然而请注意:

  • 你要向 develop 分支发PR.
  • 记得rebase.
  • 写出详细文档,如果可以,给出一些测试URL.
  • commit message格式优美,清晰可读. 如果不知道,看看以往的.
  • 我们不会强制你签署 CLA, 但是你必须确保你的代码可以被合法分发(使用 MIT 协议).

法律问题

本软件使用 MIT 协议.

请特别注意:

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

(一个中文翻译可在http://lucien.cc/?p=15 查询。)

人话:

如果你使用本软件进行盗版行为,或者非法行径,作者不为你负责.

我们仅提供代码, 如何使用请自行考虑.

you-get中文说明的更多相关文章

  1. win10 环境 gitbash 显示中文乱码问题处理

    gitbash 是 windows 环境下非常好用的命令行终端,可以模拟一下linux下的命令如ls / mkdir 等等,如果使用过程中遇到中文显示不完整或乱码的情况,多半是因为编码问题导致的,修改 ...

  2. 网页提交中文到WEB容器的经历了些什么过程....

    先准备一个网页 <html><meta http-equiv="Content-Type" content="text/html; charset=gb ...

  3. opencv在图像显示中文

    在图像定位和模式识别时,经常需要把结果标注到图片上,标注内容可以是数字字母.矩形框等(opencv支持的)或者是中文汉字(借助freetype). 1.显示数字/矩形框 #include <op ...

  4. solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件

    昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: ...

  5. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  6. java中文乱码解决之道(一)-----认识字符集

    沉寂了许久(大概有三个多月了吧),LZ"按捺不住"开始写博了! java编码中的中文问题是一个老生常谈的问题了,每次遇到中文乱码LZ要么是按照以前的经验修改,要么则是baidu.c ...

  7. Sublime Text 3中文乱码解决方法以及安装包管理器方法

    一般出现乱码是因为文本采用了GBK编码格式,Sublime Text默认不支持GBK编码. 安装包管理器 简单安装 使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令 ...

  8. MAC下 mysql不能插入中文和中文乱码的问题总结

    MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...

  9. 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇一:WPF常用知识以及本项目设计总结

    篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...

  10. 【HanLP】HanLP中文自然语言处理工具实例演练

    HanLP中文自然语言处理工具实例演练 作者:白宁超 2016年11月25日13:45:13 摘要:HanLP是hankcs个人完成一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环 ...

随机推荐

  1. @RestController注解下返回到jsp视图页面

    spring4.1中添加了@RestController注解很方便,集成了@ResponseBody注解,无需再在每个方法前添加了..但是却发现个问题..之前用@Controller注解的时候经常会如 ...

  2. 为什么 Java 不提供无符号类型呢?

    网上查资料,无意中找到一个java写的开源论坛,用的人还挺多 http://jforum.net/ 查MD5,了解到 Java getBytes方法详解(字符集问题) http://liushilan ...

  3. Hibernate中saveOrUpdate()和merge()的区别

    this.getSession().merge(obj); this.getSession().saveOrUpdate(obj); saveOrUpdate(): saveOrUpdate()基本上 ...

  4. JVM的垃圾回收机制详解和调优

    JVM的垃圾回收机制详解和调优 gc即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存.java语言并不要求jvm有gc,也没有规定gc如何工作.不过常用的jvm都有gc,而且大多数gc都 ...

  5. 解决为什么每次打开Eclipse新的workspace需要更新nexus-maven-repository-index问题

    解决为什么每次打开Eclipse新的workspace需要更新nexus-maven-repository-index问题 新建一个Eclipse的workspace. 打开Window—>Pr ...

  6. java 22 - 19 多线程之生产者和消费者的代码优化

    在之前,是把生产者录入数据和消费者获取数据的所有代码都分别写在各自的类中. 这样不大好 这次把生产者和消费者部分关键代码都写入资源类中: package zl_Thread; public class ...

  7. CSS3边框图片属性---border-image

    #div{ border:18px solid; border-image:url("http://img.mukewang.com/52e22a1c0001406e03040221.jpg ...

  8. HTML 学习笔记 CSS(选择器3)

    CSS 属性选择器 属性选择器可以根据元素的额属性以及属性值来选择元素 例子1 如果 你希望把包含title的所有元素变成红色 *[title] {color:red} 例子2 与上面类似 可以只对有 ...

  9. window.execScript的兼容性写法

    把探嗅浏览器的操作提前到代码加载的时候,在代码加载的时候就立刻进行一次判断,以便让globalEval返回一个包裹了正确逻辑的函数 var globalEval = (function(){ var ...

  10. ubuntu下nginx+php5的部署

    ubuntu下nginx+php5环境的部署和centos系统下的部署稍有不同,废话不多说,以下为操作记录:1)nginx安装root@ubuntutest01-KVM:~# sudo apt-get ...