Skip to content

Retrieve and save images from manga distribution sites using GigaViewer

License

Notifications You must be signed in to change notification settings

eggplants/getjump

Repository files navigation

getjump

PyPI version Maintainability pre-commit.ci status Test Coverage Test

ghcr latest ghcr size

  • Retrieve and save images from manga distribution sites using GigaViewer

Note: Redistribution of downloaded image data is prohibited. Please keep it to private use.

Screenshot

image

Valid URL Formats

Available Hosts

  • https://comic-action.com
  • https://comic-days.com
  • https://comic-earthstar.com
  • https://comic-gardo.com
  • https://comic-ogyaaa.com
  • https://comic-trail.com
  • https://comic-zenon.com
  • https://comicborder.com
  • https://comic-growl.com
  • https://feelweb.jp
  • https://kuragebunch.com
  • https://magcomi.com
  • https://ourfeel.jp
  • https://pocket.shonenmagazine.com
  • https://shonenjumpplus.com
  • https://tonarinoyj.jp
  • https://viewer.heros-web.com
  • https://www.sunday-webry.com

Install

pip install getjump

CLI

Usage

$ jget -b https://kuragebunch.com/episode/10834108156628843815
get: https://kuragebunch.com/episode/10834108156628843815
  Downloading... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% ( 18/18 pages ) remain: 0:00:00 spent: 0:00:02
  Saving...      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% ( 18/18 pages ) remain: 0:00:00 spent: 0:00:00
saved: 少女終末旅行/01 星空
next: https://kuragebunch.com/episode/10834108156628843819
...
saved: 少女終末旅行/42 終末
done.

Help

$ jget -h
usage: jget [-h] [-b] [-d DIR] [-f] [-o] [-m] [-u ID] [-p PW] [-q] [-V] url

Get images from jump web viewer

positional arguments:
  url                    target url

options:
  -h, --help             show this help message and exit
  -b, --bulk             download series in bulk (default: False)
  -d DIR, --savedir DIR  directory to save downloaded images (default: .)
  -f, --first            download only first page (default: False)
  -o, --overwrite        overwrite (default: False)
  -m, --metadata         save metadata as json (default: False)
  -u ID, --username ID   username if you want to login (default: None)
  -p PW, --password PW   password if you want to login (default: None)
  -q, --quiet            disable console print (default: False)
  -V, --version          show program's version number and exit

available urls:
  - https://comic-action.com
  - https://comic-days.com
  - https://comic-earthstar.com
  - https://comic-gardo.com
  - https://comic-ogyaaa.com
  - https://comic-trail.com
  - https://comic-zenon.com
  - https://comicborder.com
  - https://comic-growl.com
  - https://feelweb.jp
  - https://kuragebunch.com
  - https://magcomi.com
  - https://ourfeel.jp
  - https://pocket.shonenmagazine.com
  - https://shonenjumpplus.com
  - https://www.sunday-webry.com
  - https://tonarinoyj.jp
  - https://viewer.heros-web.com

Library

Overview

from getjump import GetJump
g = GetJump()  # create session

g.get(
    url: str,
    save_path: str = ".",
    overwrite: bool = True,
    only_first: bool = False,
    username: str | None = None,
    password: str | None = None,
)
# >>> (next_uri: str | None, prev_title: str, saved: bool)

g.login(
    url: str,
    username: str | None = None,
    password: str | None = None,
    overwrite: bool = False,
)
# >>> logined_response: requests.Response | None

g.is_valid_uri(url: str)
# >>> is_valid_uri: bool

Download all series

To download all series at once:

from getjump import GetJump as g

G = g()
next_uri = "https://shonenjumpplus.com/episode/13932016480028799982.json"
while next_uri:
    next_uri, prev_title, saved = G.get(next_uri, overwrite=False)
    if saved:
        print("saved:", prev_title)
    print("next:", next_uri)

Login

To get purchased or login-required works:

from getjump import GetJump as g

G = g()
G.login("https://shonenjumpplus.com", username="***", password="***")
G.login("https://comic-days.com", username="***", password="***")
...
G.get(...)

License

MIT


Reference