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

Folders and files

NameName
Last commit message
Last commit date
Feb 2, 2025
Feb 3, 2025
Nov 19, 2024
Jun 16, 2022
Feb 3, 2025
Nov 9, 2024
Mar 14, 2023
Nov 5, 2024
Dec 1, 2024
Jan 7, 2025
Jan 7, 2025

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-seasons.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-seasons.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