# getpycomic
[](LICENSE)
Searches and obtains the manga/comic images and generates a *CBZ* file. Allows to group the chapters by volumes.
By default, it uses 6 chapters per volume or if you want to know the volumes and chapters you can consult that information at [https://comick.io](https://comick.io).
It also allows to convert directories with manga/comic images into CBZ files. Internal directory structure you must have:
```bash
DIRECTORY
├── 1.0
│ ├── 001.jpg
│ ├── 002.jpg
│ └── 003.jpg
├── 2.0
│ ├── 001.jpg
│ ├── 002.jpg
│ └── 003.jpg
└── 3.0
├── 001.jpg
├── 002.jpg
└── 003.jpg
```
All images and CBZ files are stored on the current user's desktop.
## Supported pages
- [tmomanga](https://tmomanga.com/)
- [zonatmo](https://zonatmo.com/)
- [novelcool](https://novelcool.com/)
To request new pages, make a new `issue` with `enhancement` tag.
<br>
> [!NOTE]
> This project aims to give you the possibility to take this entertainment wherever you go, even without an Internet connection.
> [!IMPORTANT]
> You must have [Firefox](https://www.mozilla.org/) installed.
It will search the default paths of *Firefox*. If it is not found or installed in another path, use the `--firefox-bin` argument and the full path to the executable.
> [!IMPORTANT]
> **DISCLAIMER:**
> This application does not host, distribute, or store any copyrighted content.
> It is a technical tool intended for personal or educational purposes only.
> The author is not responsible for any misuse or legal consequences resulting from its use.
<br>
# Installation
```bash
$ pip install getpycomic
```
# Usage
```bash
$ getpycomic --help
usage: getpycomic [-h] -n NAME_OR_PATH [NAME_OR_PATH ...] [-w {tmomanga,zonatmo,novelcool}] [-c CHAPTER] [-v VOLUMES [VOLUMES ...]] [--no-cbz]
[-e {selenium}] [-l {en,es,br,it,ru,de,fr}] [--no-download] [-s] [--verbose] [-i] [--debug] [--no-preserve]
[--size {original,small,medium,large}] [--firefox-bin FIREFOX_BIN]
Gets manga/comic from web to CBZ files.
optional arguments:
-h, --help show this help message and exit
-n NAME_OR_PATH [NAME_OR_PATH ...], --name_or_path NAME_OR_PATH [NAME_OR_PATH ...]
Name of the manga/comic or path of the manga/comic downloaded
-w {tmomanga,zonatmo,novelcool}, --web {tmomanga,zonatmo,novelcool}
Select website. Default `tmomanga`
-c CHAPTER, --chapter CHAPTER
Chapters: `all`, `1,5`, `5+` `1-5`. Default `all`.
-v VOLUMES [VOLUMES ...], --volumes VOLUMES [VOLUMES ...]
Indicate how the chapters will be put together by volume in the CBZ file. By default, each volume has `6` chapters. For
example: 1:[1,4],2:[5,9]
--no-cbz It only downloads chapters and does not create CBZ files.
-e {selenium}, --engine {selenium}
Select engine to get data. Default `selenium`.
-l {en,es,br,it,ru,de,fr}, --language {en,es,br,it,ru,de,fr}
Select language. Default `es`.
--no-download It does not configure the motor and does not prepare it.
-s, --show Show engine or not. Default is no.
--verbose Displays messages of all operations.
-i, --interactive Interactive Prompt for manga/comics search. By default the first item found is used.
--debug Show more messages for debug.
--no-preserve Preserve or not the manga/comic images. By default the images are preserved.
--size {original,small,medium,large}
Select the size of the image. Default is `original`.
FIREFOX_BIN
Binary path of Firefox.
You can read your manga/comics wherever you want.
```
## Image sizes
Available options used by the `--size` argument:
| Options | Sizes |
|-|-|
| `original` | retains original sizes |
| `small` | 800x1200 |
| `medium` | 1000x1500 |
| `large` | 1200x1800 |
# Examples
* gets all chapters and create volumes with 6 chapter.
```bash
$ getpycomic --name_or_path MANGA_NAME --web zonatmo
```
* gets all available chapters of "MANGA_NAME" from "zonatmo", all images are stored with `small` size and builds CBZ files with specific chapters.
```bash
$ getpycomic --name_or_path MANGA_NAME --web zonatmo --chapter all --size small --volumes 1: [1, 15],2: [16, 30],3: [31, 45]
```
or
```bash
$ getpycomic --name_or_path MANGA_NAME --web zonatmo --chapter all --size small --volumes 1:[1,15],2:[16,30],3:[31,45]
```
* convert image directory to CBZ files. Using `--volumes` you can specify chapters per volume, if omitted, 6 chapters per volume will be used.
```bash
$ getpycomic --name_or_path /path/DIRECTORY --no-download
```
or
```bash
$ getpycomic --name_or_path /path/DIRECTORY --no-download --volumes 1:[1,3]
```
* Pass the *Firefox* binary path.
Linux
```bash
$ getpycomic --name_or_path MANGA_NAME --firefox-bin /path/firefox
```
Windows
```bash
$ getpycomic --name_or_path MANGA_NAME --firefox-bin \path\firefox.exe
```
# License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/kurotom/getpycomic",
"name": "getpycomic",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": "comic, manga, cbz, scraping, selenium",
"author": "kurotom",
"author_email": "55354389+kurotom@users.noreply.github.com",
"download_url": "https://files.pythonhosted.org/packages/d5/0d/ff5025c7c1994bc4a918373948dff29d34d55c6b4dc267f9da7ca464622c/getpycomic-0.1.1.tar.gz",
"platform": null,
"description": "# getpycomic\n\n[](LICENSE)\n\nSearches and obtains the manga/comic images and generates a *CBZ* file. Allows to group the chapters by volumes.\n\nBy default, it uses 6 chapters per volume or if you want to know the volumes and chapters you can consult that information at [https://comick.io](https://comick.io).\n\nIt also allows to convert directories with manga/comic images into CBZ files. Internal directory structure you must have:\n\n```bash\nDIRECTORY\n\u251c\u2500\u2500 1.0\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 001.jpg\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 002.jpg\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 003.jpg\n\u251c\u2500\u2500 2.0\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 001.jpg\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 002.jpg\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 003.jpg\n\u2514\u2500\u2500 3.0\n \u00a0\u00a0 \u251c\u2500\u2500 001.jpg\n \u00a0\u00a0 \u251c\u2500\u2500 002.jpg\n \u00a0 \u2514\u2500\u2500 003.jpg\n```\n\nAll images and CBZ files are stored on the current user's desktop.\n\n## Supported pages\n\n- [tmomanga](https://tmomanga.com/)\n- [zonatmo](https://zonatmo.com/)\n- [novelcool](https://novelcool.com/)\n\nTo request new pages, make a new `issue` with `enhancement` tag.\n\n<br>\n\n> [!NOTE]\n> This project aims to give you the possibility to take this entertainment wherever you go, even without an Internet connection.\n\n> [!IMPORTANT]\n> You must have [Firefox](https://www.mozilla.org/) installed.\nIt will search the default paths of *Firefox*. If it is not found or installed in another path, use the `--firefox-bin` argument and the full path to the executable.\n\n> [!IMPORTANT]\n> **DISCLAIMER:** \n> This application does not host, distribute, or store any copyrighted content.\n> It is a technical tool intended for personal or educational purposes only.\n> The author is not responsible for any misuse or legal consequences resulting from its use.\n\n\n<br>\n\n# Installation\n\n```bash\n$ pip install getpycomic\n```\n\n\n# Usage\n\n```bash\n$ getpycomic --help\nusage: getpycomic [-h] -n NAME_OR_PATH [NAME_OR_PATH ...] [-w {tmomanga,zonatmo,novelcool}] [-c CHAPTER] [-v VOLUMES [VOLUMES ...]] [--no-cbz]\n [-e {selenium}] [-l {en,es,br,it,ru,de,fr}] [--no-download] [-s] [--verbose] [-i] [--debug] [--no-preserve]\n [--size {original,small,medium,large}] [--firefox-bin FIREFOX_BIN]\n\nGets manga/comic from web to CBZ files.\n\noptional arguments:\n -h, --help show this help message and exit\n -n NAME_OR_PATH [NAME_OR_PATH ...], --name_or_path NAME_OR_PATH [NAME_OR_PATH ...]\n Name of the manga/comic or path of the manga/comic downloaded\n -w {tmomanga,zonatmo,novelcool}, --web {tmomanga,zonatmo,novelcool}\n Select website. Default `tmomanga`\n -c CHAPTER, --chapter CHAPTER\n Chapters: `all`, `1,5`, `5+` `1-5`. Default `all`.\n -v VOLUMES [VOLUMES ...], --volumes VOLUMES [VOLUMES ...]\n Indicate how the chapters will be put together by volume in the CBZ file. By default, each volume has `6` chapters. For\n example: 1:[1,4],2:[5,9]\n --no-cbz It only downloads chapters and does not create CBZ files.\n -e {selenium}, --engine {selenium}\n Select engine to get data. Default `selenium`.\n -l {en,es,br,it,ru,de,fr}, --language {en,es,br,it,ru,de,fr}\n Select language. Default `es`.\n --no-download It does not configure the motor and does not prepare it.\n -s, --show Show engine or not. Default is no.\n --verbose Displays messages of all operations.\n -i, --interactive Interactive Prompt for manga/comics search. By default the first item found is used.\n --debug Show more messages for debug.\n --no-preserve Preserve or not the manga/comic images. By default the images are preserved.\n --size {original,small,medium,large}\n Select the size of the image. Default is `original`.\n FIREFOX_BIN\n Binary path of Firefox.\n\nYou can read your manga/comics wherever you want.\n```\n\n## Image sizes\n\nAvailable options used by the `--size` argument:\n\n| Options | Sizes |\n|-|-|\n| `original` | retains original sizes |\n| `small` | 800x1200 |\n| `medium` | 1000x1500 |\n| `large` | 1200x1800 |\n\n\n# Examples\n\n* gets all chapters and create volumes with 6 chapter.\n\n```bash\n$ getpycomic --name_or_path MANGA_NAME --web zonatmo\n```\n\n* gets all available chapters of \"MANGA_NAME\" from \"zonatmo\", all images are stored with `small` size and builds CBZ files with specific chapters.\n\n```bash\n$ getpycomic --name_or_path MANGA_NAME --web zonatmo --chapter all --size small --volumes 1: [1, 15],2: [16, 30],3: [31, 45]\n```\nor\n```bash\n$ getpycomic --name_or_path MANGA_NAME --web zonatmo --chapter all --size small --volumes 1:[1,15],2:[16,30],3:[31,45]\n```\n\n* convert image directory to CBZ files. Using `--volumes` you can specify chapters per volume, if omitted, 6 chapters per volume will be used.\n\n```bash\n$ getpycomic --name_or_path /path/DIRECTORY --no-download\n```\nor\n```bash\n$ getpycomic --name_or_path /path/DIRECTORY --no-download --volumes 1:[1,3]\n```\n\n* Pass the *Firefox* binary path.\n\nLinux\n```bash\n$ getpycomic --name_or_path MANGA_NAME --firefox-bin /path/firefox\n```\n\nWindows\n\n```bash\n$ getpycomic --name_or_path MANGA_NAME --firefox-bin \\path\\firefox.exe\n```\n\n\n# License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Take the manga/comics wherever you want.",
"version": "0.1.1",
"project_urls": {
"Bug Tracker": "https://github.com/kurotom/getpycomic/issues",
"Homepage": "https://github.com/kurotom/getpycomic",
"Repository": "https://github.com/kurotom/getpycomic"
},
"split_keywords": [
"comic",
" manga",
" cbz",
" scraping",
" selenium"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f6c3aaf40860c1c2210731e16a8876c3907af2b35305fdebd2ad5a1707301e99",
"md5": "fa6af16f575df501e685440774f9a080",
"sha256": "ddee4bed305e855db879c9e99507f2004488b2250ca53343c2accc94e8c3e516"
},
"downloads": -1,
"filename": "getpycomic-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fa6af16f575df501e685440774f9a080",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 8120312,
"upload_time": "2025-07-15T16:36:57",
"upload_time_iso_8601": "2025-07-15T16:36:57.366454Z",
"url": "https://files.pythonhosted.org/packages/f6/c3/aaf40860c1c2210731e16a8876c3907af2b35305fdebd2ad5a1707301e99/getpycomic-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d50dff5025c7c1994bc4a918373948dff29d34d55c6b4dc267f9da7ca464622c",
"md5": "2aa5fdde35cb72ebaa442ea972abd689",
"sha256": "e569e4273c758cc13eaf8fc4fa3486c7f3edea22eba21e7e75f9a44ab2da5ac5"
},
"downloads": -1,
"filename": "getpycomic-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "2aa5fdde35cb72ebaa442ea972abd689",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 8086777,
"upload_time": "2025-07-15T16:36:58",
"upload_time_iso_8601": "2025-07-15T16:36:58.850662Z",
"url": "https://files.pythonhosted.org/packages/d5/0d/ff5025c7c1994bc4a918373948dff29d34d55c6b4dc267f9da7ca464622c/getpycomic-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-15 16:36:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "kurotom",
"github_project": "getpycomic",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "attrs",
"specs": [
[
"==",
"25.3.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2025.7.14"
]
]
},
{
"name": "cffi",
"specs": [
[
"==",
"1.17.1"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.2"
]
]
},
{
"name": "exceptiongroup",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "fake-useragent",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "h11",
"specs": [
[
"==",
"0.16.0"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "importlib-resources",
"specs": [
[
"==",
"6.5.2"
]
]
},
{
"name": "outcome",
"specs": [
[
"==",
"1.3.0.post0"
]
]
},
{
"name": "pillow",
"specs": [
[
"==",
"11.3.0"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.3.8"
]
]
},
{
"name": "pycparser",
"specs": [
[
"==",
"2.22"
]
]
},
{
"name": "pysocks",
"specs": [
[
"==",
"1.7.1"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.32.4"
]
]
},
{
"name": "selenium",
"specs": [
[
"==",
"4.34.2"
]
]
},
{
"name": "sniffio",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "sortedcontainers",
"specs": [
[
"==",
"2.4.0"
]
]
},
{
"name": "trio-websocket",
"specs": [
[
"==",
"0.12.2"
]
]
},
{
"name": "trio",
"specs": [
[
"==",
"0.30.0"
]
]
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.14.1"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.5.0"
]
]
},
{
"name": "websocket-client",
"specs": [
[
"==",
"1.8.0"
]
]
},
{
"name": "wsproto",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "zipp",
"specs": [
[
"==",
"3.23.0"
]
]
}
],
"lcname": "getpycomic"
}