Skip to main content

Swiftly download manga from multiple sources.

Project description

RapidMangaDL (Manga Downloader)

RapidMangaDL is a Python package that allows you to swiftly download manga from various sources. It offers multiple ways to interact with the application, including a Command Line Interface (CLI) and an Interactive CLI with a text-based prompt. Additionally, it comes with a web-based GUI to provide a user-friendly experience. Suppoted Sources

Installation

To install Manga Downloader, you can use pip:

pip install RapidMangaDL

Features

Download manga from multiple sources with great speed. Three different ways to interact with the application: CLI, Interactive CLI, and Web-based GUI. Select specific chapters or a custom range for downloading. Choose between downloading the manga in EPUB or PDF format. Customize the quality of the images (10 to 100).

Interactive CLI

The Interactive CLI mode provides a user-friendly prompt to search for a manga, select chapters, specify the format, and set image quality.

To start the Interactive CLI mode, simply run:

manga-dl

Here's a quick demo:

CLI

Web-based GUI

The Web-based GUI offers a graphical interface to interact with the application. You can easily search for manga, select chapters, and initiate downloads.

To start the server, run:

manga-dl gui

Here's a sneak peek:

WEB DEMO

To share create a shareable link, you can use the --share flag:

manga-dl gui --share

Command Line Interface (CLI)

The CLI mode allows you to interact with the application using command-line arguments. Here's an example of how you can use it:

manga-dl cli -m https://manganato.com/manga-az963307 -c 1-10 -f epub -q 90

You can use the Command Line Interface (CLI) with arguments to initiate a download. Here's a breakdown of the available options:

usage: manga-dl [-h] [-s QUERY] [-m MANGA] [-ss SOURCE] [-c CHAPTERS] [-ex EXCLUDE] [-f {epub,pdf}] [-q QUALITY] [--host HOST] [-p PORT]  [mode]

positional arguments:
  mode                  Mode to run (choices: gui, prompt, cli)

optional arguments:
  -h, --help            show this help message and exit
  -s QUERY, --query QUERY
                        Search for a manga
  -m MANGA, --manga MANGA
                        Manga to download (Examples: -m https://manganato.com/manga-az963307 -m manga-id -m id -m manga-title (not reliable))
  -ss SOURCE, --source SOURCE
                        Source to download from (Examples: -ss manganato -ss mangakakalot -ss manganelo -ss mangasee123) 
  -c CHAPTERS, --chapters CHAPTERS
                        Chapters to download (Examples: -c 1-10 -c 1,2,3 -c 1-10, 20-30 -c 1-10, 20-30, 40, 50, 60-70)
  -ex EXCLUDE, --exclude EXCLUDE
                        Chapters to exclude (Examples: -ex 1-10 -ex 1,2,3 -ex 1-10, 20-30 -ex 1-10, 20-30, 40, 50, 60-70)
  -f {epub,pdf}, --format {epub,pdf}
                        Format to download (choices: epub, pdf)
  -q QUALITY, --quality QUALITY
                        Quality of images (10-100)
  --host HOST           Host address of the server (default: 127.0.0.1)
  -p PORT, --port PORT  Port of the server (default: 80)
  -l {DEBUG,INFO,WARNING,ERROR,CRITICAL}, --log {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        Set the log level (choices: DEBUG, INFO, WARNING, ERROR, CRITICAL)

Python API

You can also use the Python API to interact with the application.

Selecting a manga

from manga_dl import Manga

manga = Manga("https://manganato.com/manga-az963307")
manga.set_info()

print(manga.title)
print(manga.author)
print(manga.description)

Selecting from search results

mangas = Manga.search("one piece")
manga = mangas[0]
manga.set_info()

print(manga.title)

Selecting chapters

manga.select_chapters("1-10")
# or
manga.select_chapters("1,2,3,4,5,6,7,8,9,10")
# or
manga.select_chapters("1-10, 20-30, 40, 50, 60-70")
# or
managa.select_chapters("Chapter 1, Chapter 2")
# or
managa.select_chapters("https://manganato.com/manga-az963307/chapter-1-https://manganato.com/manga-az963307/chapter-2")

# exclude chapters
manga.select_chapters("1-10", exclude="5") # same rules apply for exclude

Downloading

manga.create_epub()
# or
manga.create_pdf()

# specify quality
manga.create_epub(quality=70) # Default is 85(unchangable)

# specify output directory
manga.create_epub(path="C:/Users/username/Desktop")

Luanching the server

from manga_dl import app

app.run()
# or
app.run(host="localhost", port=80) # app is a Flask app

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

RapidMangaDL-0.0.23.tar.gz (394.5 kB view hashes)

Uploaded Source

Built Distribution

RapidMangaDL-0.0.23-py3-none-any.whl (397.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page