Ghost Downloader
核心架构

架构总览

Ghost Downloader 的核心边界:UI、服务、任务、功能包和浏览器桥接。

Ghost Downloader 的架构可以用一句话概括:UI 发起意图,CoreService 调度任务,FeatureService 选择功能包,具体下载逻辑留在 features/*_pack,浏览器扩展通过 BrowserService 接入。

架构边界

协议解析属于 Feature Pack,任务调度属于 CoreService,界面交互属于 app/view,浏览器扩展协议服务当前扩展而非公开远程控制 API。

责任分层

主要源码负责
入口Ghost-Downloader-3.py日志、配置、翻译、服务启动、窗口创建。
UIapp/view任务列表、设置页、弹窗、托盘。
服务app/services任务调度、功能包加载、浏览器桥接。
模型app/bases/models.pyTaskTaskStage、状态和序列化。
功能包features/*_pack协议解析、下载实现、外部运行时接入。
扩展browser_extension/app网页资源捕获、扩展 UI、WebSocket 请求。

核心数据流

  1. 用户或扩展提交 URL / payload。
  2. CoreService 请求 FeatureService 选择可处理的 Feature Pack。
  3. Feature Pack 创建 Task
  4. CoreService 按并发限制运行任务。
  5. UI、扩展和 taskRecorder 读取任务状态。

深入阅读

On this page