brainstate

XiaoYouChR/Ghost-Downloader-3 · source

Snapshot 0 · 2026-11-04T12:47:27Z · Python · GPL-3.0

Content fingerprint83b92c9b39298b93786b0769775bfc1b05dc1e1fca2362dcb823e05d3ca6c02d

GitHub description at capture

The only downloader you need. 下载器的集大成者。

README at capture

<h4 align="right">
  <a href="README_zh.md">简体中文</a> | English
</h4>

> [!TIP]
> Join the Ghost Downloader community on Discord: [discord.gg/fKfhkPumEM](https://discord.gg/fKfhkPumEM)

<!-- PROJECT LOGO -->
<div align="center">

![Banner](.github/assets/banner.webp)

<a href="https://trendshift.io/repositories/13847" target="_blank"><img src="https://trendshift.io/api/badge/repositories/13847" alt="XiaoYouChR%2FGhost-Downloader-3 | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>

## The only downloader you need

[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![Release][release-shield]][release-url]
[![Downloads][downloads-shield]][release-url]
[![QQGroup](https://img.shields.io/badge/QQ_Group-756042420-blue.svg?color=blue&style=for-the-badge)](https://qm.qq.com/q/gPk6FR1Hby)
[![Discord](https://img.shields.io/discord/1527965717973176391?style=for-the-badge&logo=discord&logoColor=white&label=Discord&color=%235865F2)](https://discord.gg/fKfhkPumEM)

##### [Documentation](https://gd.xychr.com/en/docs/) · [Report Bug](https://github.com/XiaoYouChR/Ghost-Downloader-3/issues/new?template=bug_report.yml) · [Request Feature](https://github.com/XiaoYouChR/Ghost-Downloader-3/issues/new?template=feature_request.yml)

</div>

<!-- FEATURES -->
## Features

* **Fast where it matters.** Every downloader is fast on a good connection. The real test is a bad one. Smart chunking without file merging. Auto-detects bandwidth. Real-browser TLS fingerprints, invisible to anti-bot checks.
* **One app instead of five.** Everything in one place, nothing watered down. `HTTP`, `Magnet/BT`, `FTP`, `M3U8`, `MPEG-DASH`, `eD2k`. `YouTube` and `Bilibili` with clip selection, any quality and subtitles, playlists and multi-part episodes. `GitHub` and `HuggingFace` with mirror acceleration.
* **See it. Sniff it. Download it.** A download button follows the video, any quality you want. The extension popup lists every medium on the page. Click it there, or just download as you normally would, the desktop app takes over seamlessly. No copying links, and authentication state carries over.
* **Native on every platform.** It shows in the details. One app, four systems, native experience everywhere. On Android, it records live M3U8 streams and keeps downloading in the background.
* **Always in control** Effortlessly. `aria2`-compatible RPC API for third-party tools. Change the URL, headers, or proxy mid-download. Progress is never lost.

<!-- ABOUT THE PROJECT -->
## About The Project

Started as a passion project to help a Bilibili creator manage resources. Now it ships on four platforms, handles virtually every download protocol, and has a growing Feature Packs plugin ecosystem.

| Platform | Required Version | Architectures |
|:--|:--|:--|
| <img src="https://api.iconify.design/mdi/microsoft-windows.svg?color=%238B949E" width="16" height="16"> **Windows** | `10+` | `x86_64` / `arm64` |
| <img src="https://api.iconify.design/mdi/apple.svg?color=%238B949E" width="16" height="16"> **macOS** | `13.0+` | `x86_64` / `arm64` |
| <img src="https://api.iconify.design/mdi/linux.svg?color=%238B949E" width="16" height="16"> **Linux** | `glibc 2.35+` | `x86_64` / `arm64` |
| <img src="https://api.iconify.design/mdi/android.svg?color=%238B949E" width="16" height="16"> **Android** | `9.0+` | `arm64-v8a` |

> [!WARNING]
> Qt `6.6+` no longer supports CPUs without the `AVX` instruction set.

> [!TIP]
> **Arch Linux AUR support**: Community-maintained packages `ghost-downloader-bin` and `ghost-downloader-git` are now available (Maintainer: [@zxp19821005](https://github.com/zxp19821005))

<!-- SCREEN SHOTS -->
## Screenshots

![Demo](https://github.com/user-attachments/assets/6763c9e0-cd5d-450e-80f5-1e22adcff36e)

<p>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset=".github/assets/android-recording-dark.webp" />
    <img src=".github/assets/android-recording-light.webp" width="236" alt="Recording a live stream on Android" />
  </picture>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset=".github/assets/android-tasks-dark.webp" />
    <img src=".github/assets/android-tasks-light.webp" width="236" alt="Download list on Android" />
  </picture>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset=".github/assets/android-notification-dark.webp" />
    <img src=".github/assets/android-notification-light.webp" width="236" alt="Download complete notification on Android" />
  </picture>
</p>

<!-- COMMAND LINE -->
## Command Line

Install `ghd` from **Settings -> Command Line Tool**.

| Command | Description |
|:--|:--|
| `ghd probe <url>` | Preview a URL without adding a task |
| `ghd add <url>...` | Add and start tasks |
| `ghd tasks` | List tasks |
| `ghd task <taskId>` | Show task details |
| `ghd pause <taskId>...` | Pause tasks |
| `ghd start <taskId>...` | Resume tasks |
| `ghd remove <taskId>...` | Remove tasks and delete unfinished files |
| `ghd wait <taskId>...` | Wait for tasks to finish |

```sh
# see which files the torrent contains
ghd probe "https://example.com/a.torrent"
# download only files 0 and 3 into ./downloads
ghd add "https://example.com/a.torrent" --select 0,3 -o ./downloads
# wait until the download finishes
ghd wait tsk_0123
```

<!-- ROADMAP -->
## Roadmap

- [ ] Make the plugin API public (Feature Packs system is operational, API stabilizing)
- [ ] Enhanced task editing, such as binding multiple Sessions to one task

Visit [Open issues](https://github.com/XiaoYouChR/Ghost-Downloader-3/issues) to see all requested features (and known issues).

<!-- SPONSOR -->
## Sponsor

| Logo | Description |
|------|---|
| <a href="https://signpath.org/"><img src="https://signpath.org/assets/favicon-50x50.png" width="50" height="50" alt="SignPath" /></a> | Free code signing provided by [SignPath.io](https://about.signpath.io/), with certificates by [SignPath Foundation](https://signpath.org/) |
| <a href="https://i0ntempest.com/"><img src="https://pbs.twimg.com/profile_images/1970235828552265728/tCvxOrZY_400x400.jpg" width="50" height="50" alt="i0ntempest" /></a> | Free code signing provided by [i0ntempest.com](https://i0ntempest.com/) |

<!-- CONTRIBUTING -->
## Contributing

Contributions make the open source community an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.

If you have a suggestion, fork the repo and create a pull request. You can also simply open an issue with the "Enhancement" tag. Don't forget to give the project a star! Thanks again!

1. Fork the Project
2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
3. Commit your Changes (git commit -m 'Add some AmazingFeature')
4. Push to the Branch (git push origin feature/AmazingFeature)
5. Open a Pull Request

Thanks to all contributors who have participated in this project!

[![Contributors](http://contrib.nn.ci/api?repo=XiaoYouChR/Ghost-Downloader-3)](https://github.com/XiaoYouChR/Ghost-Downloader-3/graphs/contributors)

## Translation Contributors

> [!TIP]
> If you'd like to help translate Ghost Downloader, welcome to join the Crowdin project: [ghost-downloader](https://crowdin.com/project/ghost-downloader)

<!-- CROWDIN-CONTRIBUTORS-START -->
<table>
  <tbody>
    <tr>
      <td align="center" valign="top">
        <a href="https://crowdin.com/profile/XiaoYouChR"><img alt="logo" style="width: 64px" src="https://crowdin-static.cf-downloads.crowdin.com/avatar/17224586/medium/44dde418af0da7d664fff23b96622e40.png" />
          <br />
          <sub><b>XiaoYouChR</b></sub></a>
        <br />
        <sub><b>14249 words</b></sub>
      </td>
      <td align="center" valign="top">
        <a href="https://crowdin.com/profile/i0ntempest"><img alt="logo" style="width: 64px" src="https://crowdin-static.cf-downloads.crowdin.com/avatar/17636930/medium/f6bf4e67c7b87221f2e7e04345f8c6b2.jpeg" />
          <br />
          <sub><b>i0ntempest</b></sub></a>
        <br />
        <sub><b>1988 words</b></sub>
      </td>
      <td align="center" valign="top">
        <a href="https://crowdin.com/profile/ReM2812"><img alt="logo" style="width: 64px" src="https://crowdin-static.cf-downloads.crowdin.com/avatar/17626502/medium/8d12a395a224c0f9d5546a8e5621186c.jpg" />
          <br />
          <sub><b>ReM2812</b></sub></a>
        <br />
        <sub><b>1010 words</b></sub>
      </td>
      <td align="center" valign="top">
        <a href="https://crowdin.com/profile/Dima88888"><img alt="logo" style="width: 64px" src="https://crowdin-static.cf-downloads.crowdin.com/avatar/16304162/medium/706302f8224fffaf9d81f8cc4168ed24_default.png" />
          <br />
          <sub><b>Dima88888</b></sub></a>
        <br />
        <sub><b>115 words</b></sub>
      </td>
    </tr>
  </tbody>
</table>
<!-- CROWDIN-CONTRIBUTORS-END -->

<!-- LICENSE -->
## License

Distributed under the GPL v3.0 License. Open `LICENSE` for more details.

Copyright © 2023-2026 XiaoYouChR.

<!-- CONTACT -->
## Contact

> [!IMPORTANT]
> Welcome to join the Ghost Downloader user group: [756042420](https://qm.qq.com/q/gPk6FR1Hby)

* [E-mail](mailto:XiaoYouChR@qq.com) - XiaoYouChR@qq.com

<!-- ACKNOWLEDGMENTS -->
## References

* [aioftp](https://github.com/aio-libs/aioftp) Ftp client/server for asyncio
* [cat-catch](https://github.com/xifangczy/cat-catch) Browser Resource Sniffing Extension
* [desktop-notifier](https://github.com/samschott/desktop-notifier) Python library for cross-platform desktop notifications
* [FFmpeg](https://ffmpeg.org/) A complete, cross-platform solution to record, convert and stream audio and video
* [Kelpie](https://github.com/XiaoYouChR/Kelpie) The eD2k download engine behind Ghost Downloader's eD2k support
* [libtorrent](https://github.com/arvidn/libtorrent) An efficient feature complete C++ bittorrent implementation
* [loguru](https://github.com/Delgan/loguru) A library which aims to bring enjoyable logging in Python
* [m3u8](https://github.com/globocom/m3u8) Python m3u8 parser
* [mpegdash](https://github.com/sangoma/mpegdash) MPEG-DASH MPD parser
* [N_m3u8DL-RE](https://github.com/nilaoda/N_m3u8DL-RE) Cross-platform DASH/HLS/MSS download tool powering Ghost Downloader's M3U8 support
* [Nuitka](https://github.com/Nuitka/Nuitka) The Python compiler
* [PyQt-Fluent-Widgets](https://github.com/zhiyiYo/PyQt-Fluent-Widgets) Powerful, extensible, and elegant Fluent Design-style widget library
* [PySide6](https://github.com/PySide/pyside-setup) The official Python module
* [QuickJS-NG](https://github.com/quickjs-ng/quickjs) A small and embeddable JavaScript engine
* [uvloop](https://github.com/MagicStack/uvloop) Ultra fast asyncio event loop
* [winloop](https://github.com/Vizonex/Winloop) An alternative to uvloop for Windows
* [wreq](https://github.com/0x676e67/wreq-python) An ergonomic Python HTTP client with TLS fingerprint emulation
* [yt-dlp](https://github.com/yt-dlp/yt-dlp) A feature-rich command-line audio/video downloader

## Acknowledgments

* [@zhiyiYo](https://github.com/zhiyiYo/) is amazing and provided a lot of help for this project.
* [@空糖_SuGar](https://github.com/SuGar0218/) designed the project banner (the current version is a 3D remake based on the original design).

## Star History

<a href="https://www.star-history.com/?repos=XiaoYouChR%2FGhost-Downloader-3&type=date&legend=top-left">
 <picture>
   <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=XiaoYouChR/Ghost-Downloader-3&type=date&theme=dark&legend=top-left&sealed_token=LFoHRo2s05TZoUPnYwYLjvXVdryi_dHus9oWAnLyuW3tytG-ZJ3cYCralCBqELLNt2yNjh53BVMVdHK2tiwQo9xJZIEIFC46B1sQc8ltFG3qOPVdV1Q2mTLijg4hnxQVSKGKGEgHEV8nrIHdcup8Y2wegyyuFkhoJfA2k9ZDaYorFXAOt-t57jGPBSTk" />
   <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=XiaoYouChR/Ghost-Downloader-3&type=date&legend=top-left&sealed_token=LFoHRo2s05TZoUPnYwYLjvXVdryi_dHus9oWAnLyuW3tytG-ZJ3cYCralCBqELLNt2yNjh53BVMVdHK2tiwQo9xJZIEIFC46B1sQc8ltFG3qOPVdV1Q2mTLijg4hnxQVSKGKGEgHEV8nrIHdcup8Y2wegyyuFkhoJfA2k9ZDaYorFXAOt-t57jGPBSTk" />
   <img alt="Star History Chart" src="https://api.star-history.com/chart?repos=XiaoYouChR/Ghost-Downloader-3&type=date&legend=top-left&sealed_token=LFoHRo2s05TZoUPnYwYLjvXVdryi_dHus9oWAnLyuW3tytG-ZJ3cYCralCBqELLNt2yNjh53BVMVdHK2tiwQo9xJZIEIFC46B1sQc8ltFG3qOPVdV1Q2mTLijg4hnxQVSKGKGEgHEV8nrIHdcup8Y2wegyyuFkhoJfA2k9ZDaYorFXAOt-t57jGPBSTk" />
 </picture>
</a>

<!-- MARKDOWN LINKS & IMAGES -->
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
[forks-shield]: https://img.shields.io/github/forks/XiaoYouChR/Ghost-Downloader-3.svg?style=for-the-badge
[forks-url]: https://github.com/XiaoYouChR/Ghost-Downloader-3/network/members
[stars-shield]: https://img.shields.io/github/stars/XiaoYouChR/Ghost-Downloader-3.svg?style=for-the-badge
[stars-url]: https://github.com/XiaoYouChR/Ghost-Downloader-3/stargazers
[issues-shield]: https://img.shields.io/github/issues/XiaoYouChR/Ghost-Downloader-3.svg?style=for-the-badge
[issues-url]: https://github.com/XiaoYouChR/Ghost-Downloader-3/issues
[release-shield]: https://img.shields.io/github/v/release/XiaoYouChR/Ghost-Downloader-3?style=for-the-badge
[release-url]: https://github.com/XiaoYouChR/Ghost-Downloader-3/releases/latest
[downloads-shield]: https://img.shields.io/github/downloads/XiaoYouChR/Ghost-Downloader-3/total?style=for-the-badge