# mandown
![Supported Python versions](https://img.shields.io/pypi/pyversions/mandown)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)
[![Download from PyPI](https://img.shields.io/pypi/v/mandown)](https://pypi.org/project/mandown)
[![Download from the AUR](https://img.shields.io/aur/version/mandown-git)](https://aur.archlinux.org/packages/mandown-git)
[![Latest release](https://img.shields.io/github/v/release/potatoeggy/mandown?display_name=tag)](https://github.com/potatoeggy/mandown/releases/latest)
[![License](https://img.shields.io/github/license/potatoeggy/mandown)](/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](https://github.com/ciromattia/kcc).
## Features
- Download comics from [supported sites](#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](#basic-library-usage)
## Usage
Run `mandown --help` or see the [docs](/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](https://aur.archlinux.org/packages/mandown-git):
```
git clone https://aur.archlinux.org/mandown-git.git
makepkg -si
```
Or, to build from source:
Mandown uses [poetry](https://github.com/python-poetry/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](https://github.com/potatoeggy/mandown/issues/new?title=Source%20request:).
- <https://blogtruyenmoi.com>
- <https://comicfury.com>
- <https://mangasee123.com>
- <https://manganato.com>
- <https://webtoons.com>
- <https://mangadex.org>
- <https://mangakakalot.com>
- <https://manhuaes.com>
- <https://readcomiconline.li>
## Basic library usage
See the [docs](/docs/) for more information and examples.
To just download the images:
```python
import mandown
mandown.download("https://comic-site.com/the-best-comic")
```
To download and convert to EPUB:
```python
import mandown
comic = mandown.query("https://comic-site.com/the-best-comic")
mandown.download(comic)
mandown.convert(comic, title=comic.metadata.title, to="epub")
```
Raw data
{
"_id": null,
"home_page": "https://github.com/potatoeggy/mandown",
"name": "mandown",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10,<3.12",
"maintainer_email": "",
"keywords": "manga,comic,downloader,download,webtoons,webtoon",
"author": "Daniel Chen",
"author_email": "danielchen04@hotmail.ca",
"download_url": "https://files.pythonhosted.org/packages/d1/a2/4a6e2600c754e004c5d27ff6de7f4cf36d6cc33ae3ca1d20944e6fb5c3e0/mandown-1.7.0.tar.gz",
"platform": null,
"description": "# mandown\n\n![Supported Python versions](https://img.shields.io/pypi/pyversions/mandown)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n[![Download from PyPI](https://img.shields.io/pypi/v/mandown)](https://pypi.org/project/mandown)\n[![Download from the AUR](https://img.shields.io/aur/version/mandown-git)](https://aur.archlinux.org/packages/mandown-git)\n[![Latest release](https://img.shields.io/github/v/release/potatoeggy/mandown?display_name=tag)](https://github.com/potatoeggy/mandown/releases/latest)\n[![License](https://img.shields.io/github/license/potatoeggy/mandown)](/LICENSE)\n\nMandown 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](https://github.com/ciromattia/kcc).\n\n## Features\n\n- Download comics from [supported sites](#supported-sites)\n - Supports downloading a range of chapters\n - Supports multithreaded downloading\n- Process downloaded images\n - Rotate or split double-page spreads\n - Trim borders\n - Resize images\n- Convert downloaded comics to CBZ, EPUB, MOBI, or PDF\n - Convert any other CBZ, EPUB, MOBI, or PDF comic to CBZ, EPUB, MOBI, or PDF\n- [A library to easily do all of this from other Python scripts](#basic-library-usage)\n\n## Usage\n\nRun `mandown --help` or see the [docs](/docs/) for more information and examples.\n\n```\nmandown get <URL>\n```\n\nTo 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.\n\n```\nmandown get <URL> --convert epub --process rotate_double_pages\n```\n\nTo download only a certain range of chapters, append the `--start` and/or `--end` options.\n\n> **Note:** `--start` and `--end` are _inclusive_, i.e., using `--start 2 --end 3` will download chapters 2 and 3.\n\nTo 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.\n\n```\nmandown convert <FORMAT> <PATH_TO_COMIC>\n```\n\nTo process an existing folder without downloading anything, use the `process` command.\n\n```\nmandown process <PROCESS_OPERATIONS> <PATH_TO_FOLDER>\n```\n\nWhere `PROCESS_OPERATIONS` is an option found from running `mandown process --help`.\n\n## Installation\n\nInstall the package from PyPI:\n\n```\npip3 install mandown\n```\n\nInstall the optional large dependencies for some features of Mandown:\n\n```\n# graphical interface (GUI)\npip3 install PySide6\n```\n\nArch Linux users may also install the package from the [AUR](https://aur.archlinux.org/packages/mandown-git):\n\n```\ngit clone https://aur.archlinux.org/mandown-git.git\nmakepkg -si\n```\n\nOr, to build from source:\n\nMandown uses [poetry](https://github.com/python-poetry/poetry) for dependency management.\n\n```\ngit clone https://github.com/potatoeggy/mandown.git\npoetry install\npoetry build\npip3 install dist/mandown*.whl\n```\n\n## Supported sites\n\nTo request a new site, please file a [new issue](https://github.com/potatoeggy/mandown/issues/new?title=Source%20request:).\n\n- <https://blogtruyenmoi.com>\n- <https://comicfury.com>\n- <https://mangasee123.com>\n- <https://manganato.com>\n- <https://webtoons.com>\n- <https://mangadex.org>\n- <https://mangakakalot.com>\n- <https://manhuaes.com>\n- <https://readcomiconline.li>\n\n## Basic library usage\n\nSee the [docs](/docs/) for more information and examples.\n\nTo just download the images:\n\n```python\nimport mandown\n\nmandown.download(\"https://comic-site.com/the-best-comic\")\n```\n\nTo download and convert to EPUB:\n\n```python\nimport mandown\n\ncomic = mandown.query(\"https://comic-site.com/the-best-comic\")\nmandown.download(comic)\nmandown.convert(comic, title=comic.metadata.title, to=\"epub\")\n```\n",
"bugtrack_url": null,
"license": "AGPL-3.0-only",
"summary": "Comic/manga/webtoon downloader and CBZ/EPUB/MOBI/PDF converter",
"version": "1.7.0",
"project_urls": {
"Documentation": "https://github.com/potatoeggy/mandown",
"Homepage": "https://github.com/potatoeggy/mandown",
"Repository": "https://github.com/potatoeggy/mandown"
},
"split_keywords": [
"manga",
"comic",
"downloader",
"download",
"webtoons",
"webtoon"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "81ac8c47219fe11b7dee2deb14511e7446c09fc3a211647bc04f93cee924403a",
"md5": "fd0e3429fa863d42a6605c687891df9d",
"sha256": "60bf3848685391fdf145f4de71332ff0472a24cebf785ce1fcdc3c5a765cbe2d"
},
"downloads": -1,
"filename": "mandown-1.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fd0e3429fa863d42a6605c687891df9d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10,<3.12",
"size": 51452,
"upload_time": "2024-01-08T00:14:18",
"upload_time_iso_8601": "2024-01-08T00:14:18.439544Z",
"url": "https://files.pythonhosted.org/packages/81/ac/8c47219fe11b7dee2deb14511e7446c09fc3a211647bc04f93cee924403a/mandown-1.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d1a24a6e2600c754e004c5d27ff6de7f4cf36d6cc33ae3ca1d20944e6fb5c3e0",
"md5": "da6625e9373186fc183d72ce816be613",
"sha256": "dd7971d219674cd68fdfd2dfb2ef25d851bf42ab5cad933f5edec36cccca032b"
},
"downloads": -1,
"filename": "mandown-1.7.0.tar.gz",
"has_sig": false,
"md5_digest": "da6625e9373186fc183d72ce816be613",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10,<3.12",
"size": 41240,
"upload_time": "2024-01-08T00:14:25",
"upload_time_iso_8601": "2024-01-08T00:14:25.039600Z",
"url": "https://files.pythonhosted.org/packages/d1/a2/4a6e2600c754e004c5d27ff6de7f4cf36d6cc33ae3ca1d20944e6fb5c3e0/mandown-1.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-08 00:14:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "potatoeggy",
"github_project": "mandown",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "mandown"
}