高效下载:you-get的简易教程

分类: 365提款超过7天 时间: 2026-01-23 08:37:58 作者: admin 阅读: 5206 点赞: 95
高效下载:you-get的简易教程

前言

为何要用You-get

你欢喜于 Internet 上的富媒体内容,只想下载它们以供自己取悦

你喜悦观看的视频,然而不得保存;对个人设备无从控制,此乃违背开放互联网之行为

你寻求解脱于闭源软件或 JavaScript 代码,并禁止在您的计算机上运行 Flash 之类的东西

你是黑客文化和自由软件的拥护者。

项目地址:soimort/you-get: ⏬ Dumb downloader that scrapes the web (github.com)

you-get的简单介绍

You-Get 是一款轻量级的命令行实用下载程序,它可以从很多 Web 上下载音频、视频及图片等多媒体内容并将其保存在本地。you-get 源于 Python,由个人开发者Mort Yao(姚家人)在 Github 上发布,并得到了很多社区贡献者的支持和改进。目前you-get已经支持了100多个网站,包括知名的 YouTube、bilibili等。

you-get的用户接口简单易用,只需在命令行中输入“you-get”后跟随需要下载的URL地址即可开始下载任务。此外,you-get还支持许多选项和参数,例如选择下载格式、重命名文件、指定下载目录等等,以满足用户的个性化需求。you-get还支持批量下载,方便用户一次性下载多个链接。与此同时,you-get提供了多语言API接口,让开发者可以将you-get下载功能集成到他们的项目中。

you-get之功用:

从YouTube,优酷,Niconico等更多流行网站下载视频/音频/图片。(请参阅受支持站点的完整列表)

于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告

下载任何非HTML内容,例如二进制文件

you-get的下载与安装

安装前提条件

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

Python 3.7.4 或以上

FFmpeg 1.0 或以上(强烈推荐) or Libav

(可选)RTMP数据库

python的下载与安装

首先在python官网下载最新的python版本

下载好之后双击运行python安装包启动安装。记得一定要勾选添加添加环境变量。

之后打开 cmd,输入python,回车,如果能进入到python交互环境,说明安装成功,然后输入exit(),回车,退出python

配置FFmpeg工具

在 Windows 下安装完 you-get 之后,虽然可以正常地进行下载,但是下载完的视频和音频常常是分开的,为了解决这个问题,我们需要安装 FFmpeg工具。

FFmpeg 是一个免费开源的跨平台音频和视频处理工具,它能够执行多种多媒体转换、处理和流媒体操作。它包含了一系列的库和工具,能够处理音频、视频和多媒体流。

项目地址:BtbN/FFmpeg-Builds

如果进到FFmpeg 官网的下载页面,有两个供我们进行下载的地址,上面一个是gyan.dev提供的镜像,下面一个是 Github下载地址,用上面一个链接下载可能会快一些。

将下载完成的压缩包解压到任意位置,将 FFmpeg 的可执行文件所在的文件夹路径(bin 文件夹的路径)添加到环境变量中,这样 you-get 才能正常使用。

接着进入 Windows 的设置,依此点击 系统 找到 高级系统设置,在弹出的选项卡中点击 高级,然后点击 环境变量,在 Path 中加上刚刚复制的那一条。

重新开一个命令行,输入 ffmpeg -version,如果输出了一堆类似下图的信息,那么说明已经设置成功了。

这时候,我们再用 you-get 下载视频时,在下载完成后会有一个类似 Merging video parts... Merged into xxx 的提示,这时候再看下载下来的文件就已经合并成一个了。

安装you-get

选项 1: 通过pip安装

安装you-get的方式有多种,其中最方便的通过 pip 包管理器从 PyPI 镜像轻松安装。

请注意,你必须使用 Python 3 版本的 pip 来安装 you-get

打开cmd窗口,输入如下代码安装you-get

pip3 install you-get

注意,如果使用pip过程中遇到安装不成功或者速度超慢,我们可以使用国内源进行下载,可以指定pip源提高下载速度,

例如:在python版本3下,使用清华源下载(推荐)

#豆瓣

pip3 install -i http://pypi.douban.com/simple/ you-get

#清华

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ you-get

安装完在终端输入you-get下面的样子表示安装成功。

选项 2: 从 GitHub 下载

您可以下载稳定版(与 PyPI 上的最新版本相同)或开发(更多修补程序、不稳定功能)分支。解压缩它到方便的目录,将包含 you-get 脚本的目录添加到你的系统环境变量中,这样系统就能够识别并执行 you-get。

打开命令行界面(Cmd 或 Shell),执行以下命令

python3 setup.py install

或者使用以下命令将 you-get 安装到用户主目录下(无需管理员权限):

python3 setup.py install --user

Tip:如果你遇到权限问题,可以在命令前加上 sudo(Linux/macOS)或者以管理员身份运行命令提示符(Windows)来获取管理员权限

选项 3: 下载集成打包版

exe (单独文件) 或 7z (包括所有依赖)

参见项目:gudu12306/GUI-for-you-get

升级程序

pip3 install --upgrade you-get

Tip:其他的系统安装方式具体参考soimort/you-get: ⏬ Dumb downloader that scrapes the web (github.com)

you-get使用方式

支持的网站

网站

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 + 完整的视频URL,例如

you-get https://v.youku.com/v_show/id_XMzk4NDE2Njc4OA==.html?firsttime=0

you-get 'https://v.youku.com/v_show/id_XMzk4NDE2Njc4OA==.html?firsttime=0'

然后静静等它下载完成即可;

那这样又会有其他问题,比如说下载格式是什么?清晰度怎么选择?下载到哪个文件夹了…后面我们需要进一步了解一下you-get常用命令。

下载其他内容

如你有 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

常用命令选项以及参数列表

选项

说明

--info/-i

显示资源信息,比如说格式、清晰度、大小等

--output-dir/-o

设置输出文件夹,即保存路径,若不指定,则保存在当前工作目录

--output-filename/-O

设置文件名,可采用默认文件名

--playlist/-l

优先下载整个列表

--url/-u

指定下载或查看的url,有时候可以省略-u直接加上url

--force/-f

强制覆盖已存在的文件

--cookies/-c

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

---player/-p

将视频喂进播放器

--http-proxy/-x

为you-get设置HTTP代理

也可在终端输入gou-get,按下enter,展示gou-get的所有命令以及作用。

用--info/-i参数得到解析出该地址下的视频信息,标有DEFAULT 为默认画质。如认同,可下载:

发现它有4种画质,它默认是给我们下载最高画质的视频,本例选择下载最高画质,代码如下:

#格式:you-get --format="container path" url

you-get --format=flv https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c

Tips:没有选定特定格式之前,默认选项为最高画质,如不希望you-get合并视频,使用--no-merge/-n.

设置输出文件名或路径

用--output-dir/-o参数指定下载该视频的地址;

用--output-filename/-O设定输出文件名.

#格式:you-get -o 要保存的地址 包含视频的网页url==you-get --output-dir 要保存的地址 包含视频的网页url

#格式:you-get -O 要保存的文件名 包含视频的网页url

you-get -o D:\test -O 兰州兰州MV https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c

用-u 参数解析视频真实的地址(url),代码如下:

#格式为you-get 包含视频的网页url

you-get -u https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c

用``--playlist/-l`批量下载一个视频列表例如:

#格式为you-get --playlist 包含视频的网页url

you-get https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c --playlist

选择播放器观看视频

使用 --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'

暂停与恢复下载

下载过程中可以使用 Ctrl+C 暂停下载

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

加载cookie

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

代理设置(进阶设置)

使用 --http-proxy/-x为you-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 项目).

结合使用

you-get --format=flv -o D:\test -O 兰州兰州MV https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c

#

you-get -o D:\test -O 兰州兰州MV https://www.bilibili.com/video/BV1pW411E72s/?spm_id_from=333.337.search-card.all.click&vd_source=7bff20db0211932c8f96b4f2babd670c --format=flv

总结:you-get的命令选项在用的时候不分前后顺序

当然you-get支持的参数还有更多,大家可以去github查看。或者,要是感兴趣的话可以把源码下载下来自己研究学习一下

you-get库在python中的几种用法

you-get 这个简单的python小程序,很适合离线下载大多数网站的视频,如果你想在python中使用 you-get可以使用以下几种命令实现视频离线下载功能,特此整理分享,大家可收藏使用。

第一种

import sys

from you_get import common as you_get

# sys.argv=['you-get','-h']

sys.argv = ['you-get', '你要下载的视频地址', '-i']

you_get.main()

第二种

import os

os.system('you-get -o d:/vedio/ 你要下载的视频地址')

解释:d:/vedio/ 就是保存知的路径,d盘的vedio文件夹,其实和道cmd命令行差不多,不过是多导入一个os库,内然后os.system(''),引号里填入的就是可以在cmd命令行中执行的

第三种

import os

os.system('you-get http://www.bilibili.com/video/av9581328/')

参考博客

[1]:使用 you-get 下载视频 - Eric (ericclose.github.io)

[2]:开源项目you-get的下载和使用、使用Cookie、配置ffmpeg

相关推荐