You-Get是一个基于 Python 3 的下载工具。使用 You-Get 可以很轻松的下载到网络上的视频、图片及音乐。

转载https://www.cnblogs.com/wangchuanyang/p/6435994.html

项目主页:https://github.com/soimort/you-get
You-Get 主页:https://you-get.org/
You-Get 原版中文说明:https://github.com/soimort/you-get/wiki/中文说明/
作者:soimort

You-Get

Python 是一款跨平台编程语言,Liunx 以及 Mac OS 下都可以使用,此处展示仅使用 Windows。


0x01 使用 You-Get 下载视频

Step1 下载与安装 Python 3

1.访问Python 官方网站下载对应版本的Python,You-Get基于Python 3,建议下载 Python 3.5.1
2.安装 Python 3.5.1,注意勾选Add Python 3.5 to PATH

勾选

3.按Win+R键打开运行,输入cmd,再输入python并回车执行,如果出现如下界面,则代表安装成功。

安装成功

Step2 安装You-Get

1.打开cmd,输入命令并执行

pip3 install you-get

2.输入命令,检测 You-Get 是否安装成功

you-get

you-get安装成功

Step3 开始下载吧

打开cmd输入命令

you-get [视频地址]

e.g.下载一段美拍视频
输入如下命令

you-get http://www.meipai.com/media/454570774

点击左上角可以快速粘贴

文件保存在C:\Users\用户名目录下,如果想自定义保存位置,使用如下命令即可

e.g.下载一段美拍视频并保存在E:\Desktop

you-get -o E:/Desktop http://www.meipai.com/media/454570774

0x02 You-Get 有关视频的其他用法

You-Get仅用来下载视频显得有些大材小用了,作者也给出了You-Get的一些其他用法,这里着重介绍几个。

1.选择视频下载格式和清晰度

通常网页视频的格式为.flv,但部分网站会提供好几种视频格式,我们可以使用 You-Get 下载这些视频。

e.g.下载一段优酷视频
1.查看当前视频的清晰度和格式

you-get -i http://v.youku.com/v_show/id_XMTQ2NzQyMjY1Ng.html

视频提供三种格式,三种清晰度

2.选择需要下载的清晰度及格式

you-get --format=hd2 http://v.youku.com/v_show/id_XMTQ2NzQyMjY1Ng.html

下载成功

2.在本地播放器中播放流媒体视频

Flash 因CPU占用高被嗤之以鼻,而 You-Get 可以直接在本地播放器中播放网页视频。类似功能的还有Livestreamer这个神奇的工具。

e.g.在 PotPlayer 中播放一段下面这段爱奇艺视频
(视频链接:http://www.iqiyi.com/v_19rrgzy5ls.html)

1.在资源管理器中打开 PotPlayer 安装目录
2.按住Shift并右击鼠标,选择在此处打开命令窗口
3.输入下面的 You-Get 播放命令即可

you-get -p PotPlayerMini64.exe http://v.youku.com/v_show/id_XMTY0MTA4ODM1Mg==.html

(注意 PotPalyer 可执行文件的文件名的大小写,大小写错误将会导致 you-get 报错,如果 Potplayer 播放失败请尝试使用 VLC 进行播放)

播放成功

3.暂停下载与继续下载

1.暂停下载:和Linux一样,按Ctrl+C可以中断命令,下载目录下会保存有一个以.download为扩展名的缓存文件。

2.继续下载:重新执行下载任务,如果下载目录下有上次下载保存的缓存文件,则继续上次下载进度。

3.强制重新下载(即使下载完成也会重新写入):

you-get -f http://www.meipai.com/media/437971164

4.下载视频列表中的所有视频

优酷等网站会提供视频列表,而 You-Get 可以通过视频列表进行批量下载。

e.g.下载一个优酷视频专辑

you-get http://www.youku.com/playlist_show/id_25917721.html

下载成功

5.下载Bilibili视频的弹幕

看Bilibili没有弹幕简直失去了人生一大乐趣,You-Get同样提供了弹幕下载功能。

1.输入命令下载 Bilibili 视频
2.下载完成后会自动下载.xml格式的弹幕

Bilibili视频及弹幕下载

3.使用Danmu2Ass.xml格式转换为.ass格式
4.打开播放器,将.ass文件加载即可

PotPlayer中加载弹幕

0x03 You-Get 下载图片

You-Get 不但支持视频下载,同样支持图片下载,支持的站点已在其主页列出,部分网站支持批量下载。
1.访问网站
2.点击图片/帖子,进入图片/帖子详情
3.复制地址到 You-Get 下载即可

截图中展现了一些例子

Twitter

Imgur

Flickr

Pinterest

0x04 其他的一些

1.使用 You-Get 建议先安装FFmpeg或 Libav
4.部分网站在中国大陆可能无法访问,如果想正常访问这些网站,可以去问问神奇海螺。

you-get模块的更多相关文章

  1. npm 私有模块的管理使用

    你可以使用 NPM 命令行工具来管理你在 NPM 仓库的私有模块代码,这使得在项目中使用公共模块变的更加方便. 开始前的工作 你需要一个 2.7.0 以上版本的 npm ,并且需要有一个可以登陆 np ...

  2. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  3. ES6模块import细节

    写在前面,目前浏览器对ES6的import支持还不是很好,需要用bable转译. ES6引入外部模块分两种情况: 1.导入外部的变量或函数等: import {firstName, lastName, ...

  4. Python标准模块--ContextManager

    1 模块简介 在数年前,Python 2.5 加入了一个非常特殊的关键字,就是with.with语句允许开发者创建上下文管理器.什么是上下文管理器?上下文管理器就是允许你可以自动地开始和结束一些事情. ...

  5. Python标准模块--Unicode

    1 模块简介 Python 3中最大的变化之一就是删除了Unicode类型.在Python 2中,有str类型和unicode类型,例如, Python 2.7.6 (default, Oct 26 ...

  6. Python标准模块--Iterators和Generators

    1 模块简介 当你开始使用Python编程时,你或许已经使用了iterators(迭代器)和generators(生成器),你当时可能并没有意识到.在本篇博文中,我们将会学习迭代器和生成器是什么.当然 ...

  7. 自己实现一个javascript事件模块

    nodejs中的事件模块 nodejs中有一个events模块,用来给别的函数对象提供绑定事件.触发事件的能力.这个别的函数的对象,我把它叫做事件宿主对象(非权威叫法),其原理是把宿主函数的原型链指向 ...

  8. 理解nodejs模块的scope

    描述 原文档地址:https://docs.npmjs.com/misc/scope 所有npm模块都有name,有的模块的name还有scope.scope的命名规则和name差不多,同样不能有ur ...

  9. nodejs模块发布及命令行程序开发

    前置技能 npm工具为nodejs提供了一个模块和管理程序模块依赖的机制,当我们希望把模块贡献出去给他人使用时,可以把我们的程序发布到npm提供的公共仓库中,为了方便模块的管理,npm规定要使用一个叫 ...

  10. 开始学nodejs——net模块

    net模块的组成部分 详见 http://nodejs.cn/api/net.html 下面整理出了整个net模块的知识结构,和各个事件.方法.属性的用法 net.Server类 net.Socket ...

随机推荐

  1. 微信小程序官方DEMO解读

    我们在开始微信小程序开发的时候,对JS,HTML等前端知识一无所知,完完全全就是门外汉在尝试一个新的方向. 在下载好开发工具,微信就已经提供了一个DEMO例子: 从程序开发的角度来看这个陌生的目录结构 ...

  2. [转]Redis内部数据结构详解-sds

    本文是<Redis内部数据结构详解>系列的第二篇,讲述Redis中使用最多的一个基础数据结构:sds. 不管在哪门编程语言当中,字符串都几乎是使用最多的数据结构.sds正是在Redis中被 ...

  3. zc702-自定义AXI-IP核实验

    目的: 自定义一个IP核,通过AXI总线与ARM系统连接 环境: Win7 32bit Vivado2014.4.1 Xilinx sdk2014.4 开发板: Zc702 第一步: 新建一个自定义的 ...

  4. ProtoBuf3 C++使用篇

    protobuf 是用于结构化数据串行化的灵活.高效.自动化的解决方案.又如 XML,不过它更小.更快.也更简单.你只需要按照你想要的数据存储格式编写一个.proto,然后使用生成器生成的代码来读写这 ...

  5. jQuery雷达扫描切换幻灯片代码

    基于jQuery雷达扫描切换幻灯片代码.这是一款切换效果类似雷达扫描,支持鼠标滚轮滚动切换.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class=" ...

  6. Linux配置定时,使用 crontab -e 与 直接编辑 /etc/crontab 的区别

    转自:http://blog.csdn.net/catoop/article/details/41821395 版权声明:本文为博主原创文章,未经博主允许不得转载. Linux配置定时任务,大家都知道 ...

  7. MongoDB GridFS 存储文件

    使用MongoDB的GridFS方式. CSDN: https://blog.csdn.net/qq_32657967/article/details/81534259官方文档: https://do ...

  8. Ubuntu下创建新用户后,不能使用管理员用户下安装的Anaconda

    解决办法: 将管理员用户下Anaconda的安装环境添加到新用户下的环境变量里,具体操作: 系统切换到新用户下: vim .bashrc #添加Anaconda的环境变量 source .bashrc ...

  9. 24小时学通Linux内核之电源开和关时都发生了什么

    说实话感觉自己快写不下去了,其一是有些勉强跟不上来,其二是感觉自己越写越差,刚开始可能是新鲜感以及很多读者的鼓励,现在就是想快点完成自己制定的任务,不过总有几个读者给自己鼓励,很欣慰的事情,不多感慨了 ...

  10. linq2db sqlite应用

    使用linq2db sqlite 的时候,找不到增加,删除的操作,原来是要引入一个新的命名空间LinqTODB. 1 using LinqToDB; 插入: 1 User uNew = new Use ...