Skip to main content

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

Project description

mandown

Supported Python versions Code style: black Checked with mypy Download from PyPI Download from the AUR Latest release License

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

Features

Supported sites

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

Usage

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

mandown get <URL>

To convert the download contents to CBZ/EPUB/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

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.3.3.tar.gz (37.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mandown-1.3.3-py3-none-any.whl (45.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mandown-1.3.3.tar.gz
  • Upload date:
  • Size: 37.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.10.9 Linux/6.2.2-zen1-1-zen

File hashes

Hashes for mandown-1.3.3.tar.gz
Algorithm Hash digest
SHA256 7ef5f404742073631977276797b2e7960282969c22b1fa05a5f1617ab6f9de57
MD5 bf08410ac09ec9fb1a51f7042fa50cbc
BLAKE2b-256 c7f3ed6ed721c473f1fe9661dcc3a32ff8950561573d4bf9400bdababd375104

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mandown-1.3.3-py3-none-any.whl
  • Upload date:
  • Size: 45.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.10.9 Linux/6.2.2-zen1-1-zen

File hashes

Hashes for mandown-1.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1ff7398f3afe6f207abf3e6f03f04ff2eca41083c80191c65274ed3f83c55686
MD5 1bcae198f3387ba2e3711340d6bd1b4c
BLAKE2b-256 4dd47a9c4bf89340e2bbc546b63e1cfb99147cd37637204e206b83b2f7274191

See more details on using hashes here.

Supported by

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