Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

A powerful manga downloader for bato.to with both GUI and CLI interfaces, featuring multi-threaded downloads, flexible chapter selection, and progress tracking.

License

Notifications You must be signed in to change notification settings

Yui007/bato_downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

50 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“š Bato.to Manga Downloader

PyPI Python PyQt6 License

Beautiful manga downloader for xbat.tv (formerly bato.to)

Search, browse, and download your favorite manga with ease

GUI Screenshot


โœจ Features

๐Ÿ” Smart Search

  • Search by manga title
  • Card-based results with covers
  • Authors, genres & ratings display
  • Pagination support

๐Ÿ“ฅ Powerful Downloads

  • Concurrent chapter downloads
  • Parallel image fetching
  • Progress tracking
  • Resume support

๐Ÿ“ Multiple Formats

  • Images - Raw image files
  • PDF - Single file per chapter
  • CBZ - Comic book archive

๐ŸŽจ Two Interfaces

  • GUI - Beautiful PyQt6 interface
  • CLI - Interactive Rich terminal

๐Ÿš€ 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

  1. ๐Ÿ” Search - Enter manga name and press Search
  2. ๐Ÿ‘† Select - Click a result card to view details
  3. โ˜‘๏ธ Choose - Select chapters you want to download
  4. ๐Ÿ“ฅ 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://xbat.tv/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
PyQt6 Modern GUI framework
Typer CLI framework
Rich Beautiful terminal output
Requests HTTP requests
Pillow 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_chapters in settings (try 1-2)
  • Reduce concurrent_images in settings
  • Check if the site is accessible
โŒ Invalid URL error
  • URL must contain bato or xbat and /title/
  • Example: https://xbat.tv/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!

About

A powerful manga downloader for bato.to with both GUI and CLI interfaces, featuring multi-threaded downloads, flexible chapter selection, and progress tracking.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published