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. 【算法】解析IEEE 754 标准

    目录结构: contents structure [-] 浮点数的存储过程 次正规数(Denormalized Number) 零(zero) 非数值(NaN) 无穷大(infinity) 除数为0. ...

  2. Beautiful Soup 解决爬虫编码格式问题,Beautiful Soup编码格式

    一. 为什么要用解析框架 bs4 我觉得爬虫最难得问题就是编码格式,因为你不知道要爬取目标网站的编码格式,有可能是Unicode,utf-8, ASCII , gbk格式,但是使用Beautiful ...

  3. CTF线下防御战 — 让你的靶机变成“铜墙铁壁”

    本文首发安全客,未经允许禁止转载.原文链接 一. 前言 随着CTF的普及,比赛的形式也有了越来越多的花样,对于线下赛来说,开始出现了安全加固或者防御战之类的环节,亦或者因为拿下靶机后不希望其他攻击者进 ...

  4. session_id()和session_regenerate_id()对原来session文件和其中数据是怎么处理的

    一.session_id()对原来session文件和里面的数据,是怎么处理的? 测验办法:<?php $sid = md5("aaad");session_id($sid) ...

  5. ng-repeat 的重复问题

    如果ng-repeat绑定的数组中元素有重复, 如 $scope.data = [1,2,2] ng-repeat="value in data"  //这种写法就会报错,ngRe ...

  6. .NET Core 2.1中的HttpClientFactory最佳实践

    ASP.NET Core 2.1中出现一个新的HttpClientFactory功能, 它有助于解决开发人员在使用HttpClient实例从其应用程序发出外部Web请求时可能遇到的一些常见问题. 介绍 ...

  7. 34对MyBatis的博客的整理心得

    对本博客的mybatis重新读一下,做一个整理.如下: 1:为什么会有mybatis,因为原生的jdbc方式有很大问题: (1)数据库连接,使用时就创建,不使用立即释放,对数据库进行频繁连接开启和关闭 ...

  8. Android 8 蓝牙 扫描流程

    记录android 8 蓝牙扫描设备的流程 src/com/android/settings/bluetooth/BluetoothSettings.java @Override protected ...

  9. 为何GET只发一次TCP连接,POST发两次TCP连接

    GET和POST是HTTP请求的两种基本方法,要说他们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  10. Ext-JS-Classic-Demo 面向pc端示例

    基于Ext Js 6.5.1 面向pc端示例,低于此版本可能存在兼容问题,慎用 已忽略编译目录,请自行编译运行 Sencha Cmd 版本:v6.5.1.240 git地址:https://githu ...