Skip to main content

Comic/manga/webtoon downloader and CBZ/EPUB/MOBI/PDF converter

Project description

mandown

Supported Python versions Checked with mypy Download from PyPI Download from the AUR Latest release License

Mandown is a comic downloader and a CBZ, EPUB, MOBI, and/or PDF converter. It also supports image post-processing to make them more readable on certain devices similarly to Kindle Comic Converter.

Features

  • Download comics from supported sites
    • Supports downloading a range of chapters
    • Supports multithreaded downloading
  • Process downloaded images
    • Rotate or split double-page spreads
    • Trim borders
    • Resize images
  • Convert downloaded comics to CBZ, EPUB, MOBI, or PDF
    • Convert any other CBZ, EPUB, MOBI, or PDF comic to CBZ, EPUB, MOBI, or PDF
  • A library to easily do all of this from other Python scripts

Usage

Run mandown --help or see the docs for more information and examples.

mandown get <URL>

To convert the downloaded contents to CBZ/EPUB/MOBI/PDF, append the --convert option. To apply image processing to the downloaded images, append the --process option.

mandown get <URL> --convert epub --process rotate_double_pages

To download only a certain range of chapters, append the --start and/or --end options.

Note: --start and --end are inclusive, i.e., using --start 2 --end 3 will download chapters 2 and 3.

To convert an existing folder or comic file without downloading anything (like a stripped-down version of https://github.com/ciromattia/kcc), use the convert command.

mandown convert <FORMAT> <PATH_TO_COMIC>

To process an existing folder without downloading anything, use the process command.

mandown process <PROCESS_OPERATIONS> <PATH_TO_FOLDER>

Where PROCESS_OPERATIONS is an option found from running mandown process --help.

Installation

Install the package from PyPI:

pip3 install mandown

Install the optional large dependencies for some features of Mandown:

# graphical interface (GUI)
pip3 install PySide6

Arch Linux users may also install the package from the AUR:

git clone https://aur.archlinux.org/mandown-git.git
makepkg -si

Or, to build from source:

Mandown uses poetry for dependency management.

git clone https://github.com/potatoeggy/mandown.git
poetry install
poetry build
pip3 install dist/mandown*.whl

Supported sites

To request a new site, please file a new issue.

Basic library usage

See the docs for more information and examples.

To just download the images:

import mandown

mandown.download("https://comic-site.com/the-best-comic")

To download and convert to EPUB:

import mandown

comic = mandown.query("https://comic-site.com/the-best-comic")
mandown.download(comic)
mandown.convert(comic, title=comic.metadata.title, to="epub")

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

mandown-1.9.0.tar.gz (43.0 kB view details)

Uploaded Source

Built Distribution

mandown-1.9.0-py3-none-any.whl (54.9 kB view details)

Uploaded Python 3

File details

Details for the file mandown-1.9.0.tar.gz.

File metadata

  • Download URL: mandown-1.9.0.tar.gz
  • Upload date:
  • Size: 43.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.9-zen1-2-zen

File hashes

Hashes for mandown-1.9.0.tar.gz
Algorithm Hash digest
SHA256 69c70f0f9d1789b612483124b7ec4bce3140c6ab2efda76b70ab926c45c6d74f
MD5 8e230744b1f47c436dfa44ead248ea97
BLAKE2b-256 852f9ca16a99aa990ae651243be92b2eda554d58eefdb19ca82aeace1ef11eb4

See more details on using hashes here.

File details

Details for the file mandown-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: mandown-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 54.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.9-zen1-2-zen

File hashes

Hashes for mandown-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4077bb42a3366133d375438df147b3d5c9d0d1738b428733c7dcb5733fe47ffc
MD5 f3d98eb0bcf249ae19ed18be3fa795c5
BLAKE2b-256 e59ee8b5fd38137335bb8998367846e6912a991e5f0d1d1d6c1c740296f28087

See more details on using hashes here.

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