A beautiful manga downloader for Bato.to with PyQt6 GUI and Rich CLI
Project description
๐ Bato.to Manga Downloader
Beautiful manga downloader for bato.to, batotoo.com, and bato.si
Search, browse, and download your favorite manga with ease
โจ Features
๐ Smart Search
|
๐ฅ Powerful Downloads
|
๐ Multiple Formats
|
๐จ Two Interfaces
|
๐ Installation
Option 1: Install from PyPI (Recommended)
# Install from PyPI
pip install bato-downloader
# Launch GUI
bato-downloader-gui
# Launch CLI
bato-downloader
โ That's it! All dependencies are installed automatically.
Option 2: Download Executables
| Platform | GUI | CLI |
|---|---|---|
| Windows | ๐ฅ BatoDownloaderGUI.exe | ๐ฅ BatoDownloaderCLI.exe |
Just download and run - no Python needed!
๐ฅ๏ธ Graphical User Interface
| Search | Manga Details | Settings |
|---|---|---|
| Search by title | View chapters | Configure downloads |
| Cover previews | Select multiple | Set output format |
| One-click select | Download progress | Adjust concurrency |
How to Use
- ๐ Search - Enter manga name and press Search
- ๐ Select - Click a result card to view details
- โ๏ธ Choose - Select chapters you want to download
- ๐ฅ Download - Click "Download Selected" and wait
๐ป Command-Line Interface
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ ๐ BATO DOWNLOADER ๐ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
Main Menu
[1] ๐ฅ Download Manga by URL
[2] ๐ Search For Manga
[3] โ๏ธ Settings
[4] ๐ช Exit
Select option [1/2/3/4]:
Direct Commands
# Interactive mode
bato-downloader
# Search for manga
bato-downloader search "Solo Leveling"
# Download from URL
bato-downloader download "https://bato.si/title/81514-solo-leveling"
โ๏ธ Configuration
Settings are saved in config.json:
| Setting | Options | Default |
|---|---|---|
๐ download_format |
images / pdf / cbz |
images |
๐ output_directory |
Any path | Current folder |
โก concurrent_chapters |
1-10 | 3 |
๐ผ๏ธ concurrent_images |
1-20 | 5 |
๐พ keep_images_after_conversion |
true / false |
true |
๐ Project Structure
bato_downloader/
โโโ ๐ main.py # GUI entry point
โโโ ๐ฅ๏ธ cli.py # CLI entry point
โโโ ๐ gui/
โ โโโ main_window.py # Main window
โ โโโ workers.py # Background threads
โ โโโ styles.py # Theme & colors
โ โโโ widgets/ # UI components
โโโ ๐ src/
โ โโโ config.py # Settings
โ โโโ scraper/ # Web scraping
โ โโโ downloader/ # Download logic
โโโ ๐ง build_gui.bat # Build GUI
โโโ ๐ง build_cli.bat # Build CLI
โโโ ๐ง build_all.bat # Build both
๐ฆ Dependencies
| Package | Purpose |
|---|---|
| Modern GUI framework | |
| CLI framework | |
| Beautiful terminal output | |
| HTTP requests | |
| Image processing |
โ Troubleshooting
๐ผ๏ธ Cover images not loading
- Check your internet connection
- Covers load asynchronously, wait a moment
- Try refreshing the search
โฑ๏ธ Download timeouts
- Reduce
concurrent_chaptersin settings (try 1-2) - Reduce
concurrent_imagesin settings - Check if the site is accessible
โ Invalid URL error
- URL must contain
batoand/title/ - Example:
https://bato.si/title/81514-solo-leveling
๐ PDF conversion fails
pip install Pillow --upgrade
๐ ๏ธ Development
Install from Source
# Clone the repository
git clone https://github.com/Yui007/bato_downloader.git
cd bato_downloader
# Install in development mode
pip install -e .
# Run directly
bato-downloader # CLI
bato-downloader-gui # GUI
# Or run scripts directly
python cli.py
python main.py
Building Executables
# Build GUI only
.\build_gui.bat
# Build CLI only
.\build_cli.bat
# Build both at once
.\build_all.bat
Output:
dist/
โโโ BatoDownloaderGUI.exe # ๐ผ๏ธ Windowed application
โโโ BatoDownloaderCLI.exe # ๐ป Console application
๐ License
This project is licensed under the MIT License
Made with โค๏ธ by Yui007
โญ Star this repo if you find it useful!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bato_downloader-6.0.0.tar.gz.
File metadata
- Download URL: bato_downloader-6.0.0.tar.gz
- Upload date:
- Size: 33.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5609c4be71c653311d4e6642205bf14929405d09daa7516b7a8fe6817e973ca8
|
|
| MD5 |
7bba23aa7e4bc93d708c311f50ba3ed7
|
|
| BLAKE2b-256 |
a2d5611de6d404493a379f9b7ebb995e494b00b3c3d4ec9611b12299a147c38a
|
File details
Details for the file bato_downloader-6.0.0-py3-none-any.whl.
File metadata
- Download URL: bato_downloader-6.0.0-py3-none-any.whl
- Upload date:
- Size: 42.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f040c6c18bf514881eccc012ddf4ff36852708321a0c169e545495c2ecefc538
|
|
| MD5 |
231b9513c4f14674c18550ffaea50c14
|
|
| BLAKE2b-256 |
bf5d467c1c22a1f3fdcc945f996c0249fb7cdef23f473113fdff2b196be439ad
|