Skip to main content

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

getpiccoma-0.0.0.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

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

getpiccoma-0.0.0-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file getpiccoma-0.0.0.tar.gz.

File metadata

  • Download URL: getpiccoma-0.0.0.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for getpiccoma-0.0.0.tar.gz
Algorithm Hash digest
SHA256 28d9ea8af730d557ca3e454cc8fd79532590bcfafb02e41d14261442c73797b2
MD5 b15397d50a3cbd7f1cbf33507ae35070
BLAKE2b-256 7f1a6b3d08bd9b6490d932b8d772f2a050cf6e2042748286a22db90735c0dde0

See more details on using hashes here.

File details

Details for the file getpiccoma-0.0.0-py3-none-any.whl.

File metadata

  • Download URL: getpiccoma-0.0.0-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for getpiccoma-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 94ff2c57884bc61c3b2186c858a137b9d76ecfeda21acce726305c64b12349bd
MD5 63f68ee6fe9abf3588fb356b2ff54e5b
BLAKE2b-256 f3fde241433d8d7ccd2ba7e545b1f4e4e46700ae43140f79784de168d0e7b398

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.0 This release

2 files

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