You-Get:支持 80 多个网站的命令行多媒体下载器

简介:

你们大多数人可能用过或听说过 Youtube-dl,这个命令行程序可以从包括 Youtube 在内的 100+ 网站下载视频。我偶然发现了一个类似的工具,名字叫做 You-Get。这是一个 Python 编写的命令行下载器,可以让你从 Youtube、Facebook、Twitter 等很多热门网站下载图片,音频和视频(LCTT 译注:首先,它们得是存在的网站)。目前该下载器支持 80+ 站点,点击这里查看所有支持的网站。

You-Get 不仅仅是一个下载器,它还可以将在线视频导流至你的视频播放器。更进一步,它还允许你在 Google 上搜索视频,只要给出搜索项,You-Get 使用 Google 搜索并下载相关度最高的视频。另外值得一提的特性是,它允许你暂停和恢复下载过程。它是一个完全自由、开源及跨平台的应用,适用于 Linux、MacOS 及 Windows。

安装 You-Get

确保你已经安装如下依赖项:

  • Python 3
  • FFmpeg (强烈推荐) 或 Libav
  • (可选) RTMPDump

有多种方式安装 You-Get,其中官方推荐采用 pip 包管理器安装。如果你还没有安装 pip,可以参考如下链接:

需要注意的是,你需要安装 Python 3 版本的 pip

接下来,运行如下命令安装 You-Get:


 
 
  1. $ pip3 install you-get

可以使用命令升级 You-Get 至最新版本:


 
 
  1. $ pip3 install --upgrade you-get

开始使用 You-Get

使用方式与 Youtube-dl 工具基本一致。

下载视频

下载视频,只需运行:


 
 
  1. $ you-get https://www.youtube.com/watch?v=HXaglTFJLMc

输出示例:


 
 
  1. site: YouTube
  2. title: The Last of The Mohicans by Alexandro Querevalú
  3. stream:
  4. - itag: 22
  5. container: mp4
  6. quality: hd720
  7. size: 56.9 MiB (59654303 bytes)
  8. # download-with: you-get --itag=22 [URL]
  9. Downloading The Last of The Mohicans by Alexandro Querevalú.mp4 ...
  10. 100% ( 56.9/ 56.9MB) ├███████████████████████████████████████████████████████┤[1/1] 752 kB/s

下载视频前,你可能希望查看视频的细节信息。You-Get 提供了 –info-i 参数,使用该参数可以获得给定视频所有可用的分辨率和格式。


 
 
  1. $ you-get -i https://www.youtube.com/watch?v=HXaglTFJLMc

或者


 
 
  1. $ you-get --info https://www.youtube.com/watch?v=HXaglTFJLMc

输出示例如下:


 
 
  1. site: YouTube
  2. title: The Last of The Mohicans by Alexandro Querevalú
  3. streams: # Available quality and codecs
  4. [ DASH ] ____________________________________
  5. - itag: 137
  6. container: mp4
  7. quality: 1920x1080
  8. size: 101.9 MiB (106816582 bytes)
  9. # download-with: you-get --itag=137 [URL]
  10. - itag: 248
  11. container: webm
  12. quality: 1920x1080
  13. size: 90.3 MiB (94640185 bytes)
  14. # download-with: you-get --itag=248 [URL]
  15. - itag: 136
  16. container: mp4
  17. quality: 1280x720
  18. size: 56.9 MiB (59672392 bytes)
  19. # download-with: you-get --itag=136 [URL]
  20. - itag: 247
  21. container: webm
  22. quality: 1280x720
  23. size: 52.6 MiB (55170859 bytes)
  24. # download-with: you-get --itag=247 [URL]
  25. - itag: 135
  26. container: mp4
  27. quality: 854x480
  28. size: 32.2 MiB (33757856 bytes)
  29. # download-with: you-get --itag=135 [URL]
  30. - itag: 244
  31. container: webm
  32. quality: 854x480
  33. size: 28.0 MiB (29369484 bytes)
  34. # download-with: you-get --itag=244 [URL]
  35. [ DEFAULT ] _________________________________
  36. - itag: 22
  37. container: mp4
  38. quality: hd720
  39. size: 56.9 MiB (59654303 bytes)
  40. # download-with: you-get --itag=22 [URL]

默认情况下,You-Get 会下载标记为 “DEFAULT” 的格式。如果你对格式或分辨率不满意,可以选择你喜欢的格式,使用格式对应的 itag 值即可。


 
 
  1. $ you-get --itag=244 https://www.youtube.com/watch?v=HXaglTFJLMc

下载音频

执行下面的命令,可以从 soundcloud 网站下载音频:


 
 
  1. $ you-get 'https://soundcloud.com/uiceheidd/all-girls-are-same-999-prod-nick-mira'
  2. Site: SoundCloud.com
  3. Title: ALL GIRLS ARE THE SAME (PROD. NICK MIRA)
  4. Type: MP3 (audio/mpeg)
  5. Size: 2.58 MiB (2710046 Bytes)
  6. Downloading ALL GIRLS ARE THE SAME (PROD. NICK MIRA).mp3 ...
  7. 100% ( 2.6/ 2.6MB) ├███████████████████████████████████████████████████████┤[1/1] 983 kB/s

查看音频文件细节,使用 -i 参数:


 
 
  1. $ you-get -i 'https://soundcloud.com/uiceheidd/all-girls-are-same-999-prod-nick-mira'

下载图片

运行如下命令下载图片:


 
 
  1. $ you-get https://pixabay.com/en/mountain-crumpled-cyanus-montanus-3393209/

You-Get 也可以下载网页中的全部图片:


 
 
  1. $ you-get https://www.ostechnix.com/pacvim-a-cli-game-to-learn-vim-commands/

搜索视频

你只需向 You-Get 传递一个任意的搜索项,而无需给出有效的 URL;You-Get 会使用 Google 搜索并下载与你给出搜索项最相关的视频。(LCTT 译注:Google 的机器人检测机制可能导致 503 报错导致该功能无法使用)。


 
 
  1. $ you-get 'Micheal Jackson'
  2. Google Videos search:
  3. Best matched result:
  4. site: YouTube
  5. title: Michael Jackson - Beat It (Official Video)
  6. stream:
  7. - itag: 43
  8. container: webm
  9. quality: medium
  10. size: 29.4 MiB (30792050 bytes)
  11. # download-with: you-get --itag=43 [URL]
  12. Downloading Michael Jackson - Beat It (Official Video).webm ...
  13. 100% ( 29.4/ 29.4MB) ├███████████████████████████████████████████████████████┤[1/1] 2 MB/s

观看视频

You-Get 可以将在线视频导流至你的视频播放器或浏览器,跳过广告和评论部分。(LCTT 译注:使用 -p 参数需要对应的 vlc/chrominum 命令可以调用,一般适用于具有图形化界面的操作系统)。

以 VLC 视频播放器为例,使用如下命令在其中观看视频:


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

或者


 
 
  1. $ you-get --player vlc https://www.youtube.com/watch?v=HXaglTFJLMc

类似地,将视频导流至以 chromium 为例的浏览器中,使用如下命令:


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


在上述屏幕截图中,可以看到并没有广告和评论部分,只是一个包含视频的简单页面。

设置下载视频的路径及文件名

默认情况下,使用视频标题作为默认文件名,下载至当前工作目录。当然,你可以按照你的喜好进行更改,使用 –output-dir-o 参数可以指定路径,使用 –output-filename-O 参数可以指定下载文件的文件名。


 
 
  1. $ you-get -o ~/Videos -O output.mp4 https://www.youtube.com/watch?v=HXaglTFJLMc

暂停和恢复下载

CTRL+C 可以取消下载。一个以 .download 为扩展名的临时文件会保存至输出路径。下次你使用相同的参数下载时,下载过程将延续上一次的过程。

当文件下载完成后,以 .download 为扩展名的临时文件会自动消失。如果这时你使用同样参数下载,You-Get 会跳过下载;如果你想强制重新下载,可以使用 –force-f 参数。

查看命令的帮助部分可以获取更多细节,命令如下:


 
 
  1. $ you-get --help

这次的分享到此结束,后续还会介绍更多的优秀工具,敬请期待!


原文发布时间为:2018-05-25

本文作者:Sk 

本文来自云栖社区合作伙伴“Linux中国开源社区”,了解相关信息可以关注“Linux中国开源社区”。

相关文章
|
3月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
490 7
|
机器学习/深度学习 XML 数据可视化
python常用的第三方库有哪些?
python常用的第三方库有哪些?
2566 157
|
Java Linux Maven
Maven下载与安装详细教程
Maven下载与安装详细教程
580 0
|
JSON SpringCloudAlibaba Java
Springcloud Alibaba + jdk17+nacos 项目实践
本文基于 `Springcloud Alibaba + JDK17 + Nacos2.x` 介绍了一个微服务项目的搭建过程,包括项目依赖、配置文件、开发实践中的新特性(如文本块、NPE增强、模式匹配)以及常见的问题和解决方案。通过本文,读者可以了解如何高效地搭建和开发微服务项目,并解决一些常见的开发难题。项目代码已上传至 Gitee,欢迎交流学习。
1202 1
Springcloud Alibaba + jdk17+nacos 项目实践
|
JSON JavaScript Linux
绘图框架 plotly 知识点补充(绘制子图,图表保存)
绘图框架 plotly 知识点补充(绘制子图,图表保存)
710 13
|
编解码 算法 Python
浅析You-Get:这款视频下载工具的强势之处
浅析You-Get:这款视频下载工具的强势之处
563 0
|
SQL 关系型数据库 MySQL
SQLAlchemy使用指南
**SQLAlchemy 指南**:Python SQL 工具包,提供数据库高级抽象。安装:`pip install sqlalchemy`,加上数据库驱动(如 MySQL: `pip install mysql-connector-python`)。基础使用包括:创建数据库连接、定义模型、创建表、添加/查询/更新/删除数据。高级功能涉及关系映射、原生 SQL 语句及 SQLAlchemy Core。推荐阅读官方文档以深入了解。
1197 1
|
SQL 关系型数据库 编译器
SqlAlchemy 2.0 中文文档(四十七)(3)
SqlAlchemy 2.0 中文文档(四十七)
417 0
|
移动开发 自然语言处理 前端开发
input表单 type属性详解
input 元素可以用来生成一个供用户输入数据的简单文本框。 在默认的情况下, 什么样的数据均可以输入。而通过不同的type属性值,可以限制输入的内容。
639 1
|
SQL Oracle 关系型数据库
PLSQL 官方下载及安装
PLSQL 官方下载及安装
3770 0
PLSQL 官方下载及安装