Gogoanime-Downloader/
│
├── CommandLineUI/
│ ├── main.py
│ └── setup.json
│
├── DesktopGUI/
│ ├── gui.py
│ └── setup.json
│
├── WebUI/
│ ├── webUi.py
│ ├── setup.json
│ └── batchlists/
│
└── README.md
Anime Downloader is a versatile anime episode downloading application offering three distinct interfaces to cater to different user preferences:
- Command-Line Interface (CLI)
- Desktop Graphical User Interface (PyQt5)
- Web-Based User Interface (Streamlit)
Core Technology: Traditional Python threading
- Install requirements
pip install -r requirements.txt
- Navigate to the project folder subdirectory of /CommandLineUI
python main.py
- Multi-threaded downloads
- Direct episode selection
- Comprehensive download management
Performance: Established, reliable threading mechanism
Status: Currently Incomplete
- Graphical episode selection
- Download management
- Settings configuration
Technology: PyQt5 for desktop application development, async for downloading
Core Technology: Async downloading with aiohttp, Streamlit for frontend
- Install requirements
pip install -r requirements.txt
- Navigate to the project folder subdirectory of /WebUI
streamlit run webUI.py
- Asynchronous download handling
- Dynamic settings updates
- Resolution configuration
- Download path selection
- Download pause functionality
- Download cancellation
Threading Approaches
- CLI: Traditional multi-threading
- Desktop GUI: Not yet implemented
- Web UI: Asynchronous downloading with aiohttp
Note: Each interface has a distinct backend implementation optimized for its specific use case.
Each interface maintains its own setup.json with potential configurations:
Gogoanime base URL Download directory Preferred video resolution Download threads/concurrency
- Standardize backend across interfaces
- Implement pause/cancel in all interfaces
- Cross-platform compatibility
- Enhanced error handling
- Integration with anime tracking services
The Web UI (Streamlit) is currently the most advanced interface, with:
- Dynamic settings updates
- Efficient async download mechanism
- Upcoming pause/cancel features
This tool is for personal use. Always respect copyright laws and support the anime industry by using legal streaming services.
MIT License
Contributions are welcome! Please submit pull requests or open issues to help improve the project.