大家好,我是辰哥

今天给大家介绍一个号称可以下载全网视频、音频、图像的开源库

——you-get

you-get

这里说全网可能一点夸张,但如果实际上去使用you-get下载媒体文件(视频、音频、图像),对于主流的平台几乎都可以满足需求。

目前you-get支持下载的媒体文件平台80+(包括国内国外),像国内常用的各种主流视频平台(某站、某手、某音、某酷等)。

具体支持哪些平台,可以参考下方链接

https://github.com/soimort/you-get

安装you-get

you-get是python的一个库,因此通过pip方式直接进行安装

pip install you-get

使用you-get

you-get的使用很简单,一行命令就可以搞定

命令格式:

you-get  [媒体文件URL]

【备注】上方的命令是在终端中执行

下面以辰哥的一个视频进行举例:

you-get  https://www.bilibili.com/video/BV1Ef4y137ex

当前的终端中路径处于桌面,所以下载好的视频保存在桌面,其保存的格式为flv

命令:you-get  [媒体文件URL]

上面默认的命令下载好的视频是flv格式,此外you-get可以设置参数

具体参数以及用法如下:

-i 【解析视频信息】

-o【保存地址】

-u【解析视频真实地址】

--json【视频的json信息】

参数-i用法:

you-get -i   https://www.bilibili.com/video/BV1Ef4y137ex

罗列出了该视频在下载保存时可以选择不同的格式,具体如下:

you-get --format=dash-flv https://www.bilibili.com/video/BV1Ef4y137ex

选择第一个(高清1080p的mp4格式)

参数-o用法:

you-get -o /Users/lyc https://www.bilibili.com/video/BV1Ef4y137ex

下载的视频保存到路径:/Users/lyc

参数-u用法:

you-get -u https://www.bilibili.com/video/BV1Ef4y137ex

解析视频的真实链接

参数--json用法:

you-get --json https://www.bilibili.com/video/BV1Ef4y137ex

解析视频的json信息(不同高清格式真实播放地址)

图片或音乐

同样的,音乐和图片也是一样的下载

命令:you-get  [媒体文件URL]

演示:

配合Python使用

为了实现批量下载或者与代码(Python)结合,you-get通常都是通过代码去使用,而非在终端。

下面教大家如何在在代码中去实现上面终端执行的效果

同样还是下载视频

from you_get import common
#视频链接
v_url = 'https://www.bilibili.com/video/BV1Ef4y137ex'
#保存格式
v_format = 'dash-flv'
#保存路径
save_dir = r'/Users/lyc/'
common.any_download(url=v_url,stream_id=v_format,info_only=False,output_dir=save_dir,merge=True)

通过代码去使用you-get就可以成功把视频下载保存到指定位置

扩展:

相信大家都了解过爬虫,甚至写过爬虫,you-get和爬虫结合,爬虫采集到视频链接(非真实链接)然后通过you-get进行下载

此外还有另外一种方法

import os
# #视频链接
v_url = 'https://www.bilibili.com/video/BV1Ef4y137ex'
# #保存格式
v_format = 'dash-flv'
# #保存路径
save_dir = r'/Users/lyc/'
tem_cmd = "you-get --format="+v_format+" -o "+save_dir +" " +v_url
#you-get --format=dash-flv -o /Users/lyc/ https://www.bilibili.com/video/BV1Ef4y137ex
result = os.system(tem_cmd );
print(result)

通过os.system可以执行终端命令

同样下载和终端效果一样

本文干货到此结束

有任何疑问小伙伴们欢迎下方留言讨论哈~

You-Get开源在线下载神器,搭配python更加丝滑(文中案例演示)的更多相关文章

  1. 开源音乐下载神器XMusicDownloader更新,支持歌单一键下载,支持无损音乐

    开源音乐下载神器XMusicDownloader更新啦,新增网易.腾讯音乐歌单歌曲.歌手歌曲.专辑歌曲一键下载,同时支持下载flac无损音乐. 功能 V1.0 功能开源工具软件XMusicDownlo ...

  2. AutoPy首页、文档和下载 - 跨平台的Python GUI工具包 - 开源中国社区

    AutoPy首页.文档和下载 - 跨平台的Python GUI工具包 - 开源中国社区 AutoPy是一个简单跨平台的 Python GUI工具包,可以控制鼠标,键盘,匹配颜色和屏幕上的位图.使用纯A ...

  3. 使用python做一个IRC在线下载器

    使用python做一个IRC在线下载器 1.开发流程 2.软件流程 3.开始 3.0 准备工作 3.1寻找API接口 3.2 文件模块 3.2.1 选择文件弹窗 3.2.2 提取文件名 3.2.2.1 ...

  4. JEECG 社区开源项目下载(总览)

    反馈问题板块:http://www.jeecg.org/forum.php?mod=forumdisplay&fid=153 资源1: JEECG 微云快速开发平台( JEECG 3.6.5  ...

  5. 下载神器(vip下载速度)

    简单介绍: 用过好几款下载神器,现在推荐一款比较好用的软件,强调一点本软件强调开源免费的原则,禁止一切人员在其中收取费用. 我把这款软件放到了,自己的百度云盘. 神器的使用教程如下: 百度云下载连接: ...

  6. cplusplus 库 在线管理; 类似于 python的 pip install 、nodejs 的npm模块

    cplusplus 库 在线管理: 类似于 python的 pip install .nodejs 的npm模块 还有 apache 经常使用的 Apache Ivy 项目依赖管理工具/Maven 这 ...

  7. 「下载神器」aria2 懒人安装教程 [Windows]

    是一款开源.轻量级的多协议命令行下载工具,支持 HTTP/HTTPS.FTP.SFTP.BitTorrent 和 Metalink 协议,拥有众多第三方支持插件,被誉为「下一代下载工具」和「下载神器」 ...

  8. 力推:无限制下载神器aria2

    百度网盘是一个非常方便的存储以及寻找资源的好帮手,但是百度为了挣钱把非会员的下载网速一再限制(无力吐槽),还还好一直使用油猴插件加idm下载神器来下载百度云文件.奈何idm对bt种子文件不支持下载,终 ...

  9. NSIS检测.NET Framework并在线下载

    Section -.NET Framework ;检测是否是需要的.NET Framework版本 Call GetNetFrameworkVersion Pop $R1 ;${If} $R1 < ...

随机推荐

  1. 构建前端第7篇之---elementUI设置主题,进而改变全局button底色

    张艳涛写于2020-1-20 What:是elementUI主题? 是内置的格式,elementUI默认只有一个主题,如果想整体替换按钮的颜色等问题,那么就可以用主题 设置步骤 在路径src/styl ...

  2. SQL遍历日期

    IF OBJECT_ID(N'tempdb..#temp', N'U') IS NOT NULL BEGIN DROP TABLE #temp;--临时表删除 END --创建临时表 CREATE T ...

  3. 【NLP学习其四】如何构建自己用于训练的数据集?什么是词性标注?

    数据集与词性标注 数据集是NLP中的重要一环. 但是提到数据集,很多人的第一个想法可能是:"这玩意从网上下载就好了,不用管". 真的不用管?最开始我也是这么认为的 于是我直奔CoN ...

  4. git 提代码时的相关命令,Mark一下

    以前用命令提代码都是复制粘贴,现在换了工作后,特别是回退代码的命令又忘了,去网上查了好久,心累.特此Mark一下 1. 打patch: 1.1 git diff >> ljh.patch ...

  5. 『go成长之路』 defer 作用、典型用法以及多个defer调用顺序,附加defer避坑点,拿来吧你

    预习内容 defer 的作用有哪些? 多个 defer 的执行顺序是怎样的? defer,return,函数返回值 三者之间的执行顺序 defer的作用 go中的defer是延迟函数,一般是用于释放资 ...

  6. 清晰易懂的RxJava入门实践

    导入 我相信大家肯定对ReactiveX 和 RxJava 都不陌生,因为现在只要是和技术相关的网站,博客都会随处见到介绍ReactiveX和RxJava的文章. ReactiveX Reactive ...

  7. lerna 常用命令

    lerna 介绍 lerna 处理机构 固定模式(fixed) 所有包是统一的版本号,每次升级,所有包版本统一更新,不管这个包内容改变与否 具体体现在,lerna 的配置文件 lerna.json 中 ...

  8. [源码解析] 机器学习参数服务器 Paracel (2)--------SSP控制协议实现

    [源码解析] 机器学习参数服务器 Paracel (2)-----SSP实现 目录 [源码解析] 机器学习参数服务器 Paracel (2)-----SSP实现 0x00 摘要 0x01 背景知识 1 ...

  9. gRPC学习之四:实战四类服务方法

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  10. Elasticsearch IK分词器

    Elasticsearch-IK分词器 一.简介 因为Elasticsearch中默认的标准分词器(analyze)对中文分词不是很友好,会将中文词语拆分成一个一个中文的汉字,所以引入中文分词器-IK ...