菜单

概述

相关源文件

此页面提供了 you-get 仓库的全面概述。you-get 是一个用于从网络下载媒体内容的命令行实用程序。当其他方法不方便时,you-get 可用于处理来自各种网站的视频、音频和图像。

有关详细的安装说明,请参阅 安装和设置。有关命令行选项的信息,请参阅 命令行界面

目的与范围

You-get 是一款媒体下载器,允许用户从 70 多个支持的网站下载或流式传输内容。它以 Python 编写,并采用模块化架构设计,使其易于扩展以支持新网站。

如仓库中所述

You-Get 是一个轻量级的命令行实用程序,用于从 Web 下载媒体内容(视频、音频、图像),以防没有其他便捷的方法可以做到。

该工具具有多种用途

  • 下载个人使用的媒体
  • 无广告或浏览器要求即可流式传输视频
  • 从网页抓取图像
  • 下载任意二进制文件

来源: README.md13-14 you-get.json8

系统架构概览

You-get 遵循模块化设计模式,核心系统处理命令行解析和分发,而特定网站的提取器则处理从每个支持的网站检索媒体的详细信息。

核心组件图

来源: README.md13-46 you-get.json8-9

下载流程

来源: README.md164-230

主要功能

You-get 为用户提供多项关键功能

功能描述
视频下载从 YouTube、Bilibili 等热门网站下载视频。
音频下载从 SoundCloud 等支持的网站提取音频。
图像抓取从 Tumblr、Instagram 等网页下载图像。
媒体流式传输将视频流式传输到媒体播放器,无需下载。
格式选择选择特定的视频格式和质量。
代理支持通过 HTTP 代理访问地理限制的内容。
恢复下载暂停和恢复中断的下载。
谷歌搜索如果不提供 URL,则搜索并下载视频。

来源: README.md41-46 README.md162-308

提取器系统

you-get 功能的核心是其提取器系统。每个受支持的网站都有一个专用的提取器,它继承自基础的 VideoExtractor 类,并实现特定于站点的逻辑来提取媒体信息。

来源: README.md378-459

支持的网站

You-get 支持超过 70 个不同的网站,包括 YouTube、Twitter (X)、Bilibili 等主要平台,以及许多其他网站。该系统使用 URL 路由机制来确定哪个提取器应处理给定的 URL。

对于未明确支持的网站,you-get 包含一个通用提取器,该提取器会尝试从任何网页查找和下载媒体。

支持网站的部分列表

类别示例
全球视频平台YouTube、Vimeo、Dailymotion、TikTok
社交媒体Twitter (X)、Facebook、Instagram、Tumblr
中国平台Bilibili、iQIYI、Youku、Sina Video
音频平台SoundCloud、Bandcamp、MissEvan
图像托管Flickr、Imgur、Pinterest
其他Internet Archive、Khan Academy、TED

来源: README.md378-459

版本信息

you-get 的当前版本是 0.4.1743,定义在版本文件中。

来源: src/you_get/version.py4