Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

getpiccoma

PyPI CI

ghcr size

Retrieve and save images from manga distribution sites using Piccoma.

Pages are served sliced into a grid of 50px tiles and shuffled; getpiccoma replays the viewer's own shuffle to put them back together before saving.

Valid URL Formats

Only Piccoma Japan is supported. Piccoma France (piccoma.com/fr/) runs a different site and is not handled.

Installation

# mise via github release
mise use -g github:eggplants/getpiccoma

# mise via pipx
mise use -g pipx:getpiccoma

# pipx
pipx install getpiccoma

# pip
pip install getpiccoma

Docker

docker pull ghcr.io/eggplants/getpiccoma

docker run --rm -v "$PWD:/work" -w /work \
  ghcr.io/eggplants/getpiccoma https://piccoma.com/web/viewer/8195/1185884

CLI

$ pget https://piccoma.com/web/viewer/8195/1185884
get: https://piccoma.com/web/viewer/8195/1185884
  Downloading... ━━━━━━━━━━━━ 100% ( 14/14 pages ) remain: 0:00:00 spent: 0:00:09
saved: <series>/<episode>
done.

-b follows every next episode, and stops on the first one the account may not read. A product URL implies it:

pget https://piccoma.com/web/product/8195/episodes -d out

Log in with -u to reach episodes the account has bought or unlocked. The password is prompted for when -p is left out:

pget https://piccoma.com/web/viewer/8195/1185884 -u you@example.com
Option Description
-b, --bulk follow every next episode
-d DIR, --savedir DIR directory to save into
-f, --first download only the first page
-o, --overwrite download again if it exists
-m, --metadata save episode metadata as json
-u MAIL, --username MAIL email address to log in with
-p PW, --password PW password
-t, --volumes read a product url's volume list, not episodes
-q, --quiet disable console output

Library

from getpiccoma import Piccoma

piccoma = Piccoma()
next_url, save_dir, saved = piccoma.get(
    "https://piccoma.com/web/viewer/8195/1185884",
    save_path="out",
)

episode_info reads a viewer page without downloading anything, and entries lists a series:

episode = piccoma.episode_info("https://piccoma.com/web/viewer/8195/1185884")
print(episode.series_title, episode.episode_title, len(episode.pages))

for entry in piccoma.entries(episode.product_id):
    print(entry.title, entry.is_readable, entry.url)

descramble and parse_seed are exposed on their own, for pages fetched some other way:

from PIL import Image
from getpiccoma import descramble, parse_seed

seed = parse_seed(image_url)
page = descramble(Image.open(path), seed) if seed else Image.open(path)

Acknowledgements

License

MIT License

Metadata

Release files for getpiccoma 0.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for getpiccoma 0.0.0
File Size Uploaded Provenance Actions
getpiccoma-0.0.0.tar.gz 14.6 kB Without provenance Details for getpiccoma-0.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for getpiccoma 0.0.0
File Interpreter ABI Platform Actions
getpiccoma-0.0.0-py3-none-any.whl Python 3 none any Details for getpiccoma-0.0.0-py3-none-any.whl

Total release size: 30.4 kB

Release files / getpiccoma-0.0.0.tar.gz

Download URL getpiccoma-0.0.0.tar.gz
Size 14.6 kB
Tags Source
SHA-256 checksum
How to use checksums
28d9ea8af730d557ca3e454cc8fd79532590bcfafb02e41d14261442c73797b2
BLAKE2b-256 checksum
How to use checksums
7f1a6b3d08bd9b6490d932b8d772f2a050cf6e2042748286a22db90735c0dde0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / getpiccoma-0.0.0-py3-none-any.whl

Download URL getpiccoma-0.0.0-py3-none-any.whl
Size 15.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
94ff2c57884bc61c3b2186c858a137b9d76ecfeda21acce726305c64b12349bd
BLAKE2b-256 checksum
How to use checksums
f3fde241433d8d7ccd2ba7e545b1f4e4e46700ae43140f79784de168d0e7b398
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for getpiccoma 0.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page