Skip to main content

Viz Manga Reader

Project description

Viz Manga Viewer

Retrieves and deobfuscates manga pages for an input chapter id. Manga pages can be saves the dual spread images as well as single page images. Chapter ids need to be retrieved from the Viz site by looking at the chapter url.

DISCLAIMER: I am not licensed or affiliated with Viz Media and this repository is meant for informational purposes only. Please delete the retrieved pages after reading.

Installation

pip install viz_manga

Usage

The VizMangaDetails class can be used to lookup series and chapter metadata and the VizMangaFetch class is used to actually get the chapter pages.

To get all the series that are publicly available:

from viz_manga import VizMangaDetails, VizMangaFetch

details: VizMangaDetails = VizMangaDetails()
series: List[Series] = details.get_series()

To get all the chapters that are publicly free for a series:

series: Series = Series(None, "one-piece")
details: VizMangaDetails = VizMangaDetails()
for chapter in details.get_series_chapters(series):
    if chapter.is_free:
        print(chapter)

To get all pages for a chapter:

viz: VizMangaFetch = VizMangaFetch()
viz.save_chapter(24297, "images/", combine=True):

CLI Usage

This module is bundled with a CLI script viz-manga-cli that allows the user to lookup and get chapters without writing any code.

usage: viz-manga-cli [-h] {fetch,series,chapters} ...

Lookup Viz manga information.

positional arguments:
  {fetch,series,chapters}
    fetch               Fetches and deobfuscates an entire manga chapter for reading.
    series              Get series title and slug (for chapter lookup) obtained from the Viz site.
    chapters            Get chapter title and id obtained from the Viz site.

options:
  -h, --help            show this help message and exit

Lookup Manga Series

>>> viz-manga-cli series

{'name': '7thGARDEN', 'slug': '7th-garden'}
{'name': 'Agravity Boys', 'slug': 'agravity-boys'}
{'name': 'Akane-banashi', 'slug': 'akane-banashi'}
{'name': "Akira Toriyama's Manga Theater", 'slug': 'akira-toriyamas-manga-theater'}
{'name': 'All You Need is Kill', 'slug': 'all-you-need-is-kill-manga'}
{'name': 'Assassination Classroom', 'slug': 'assassination-classroom'}

Lookup Manga Chapters

>>> viz-manga-cli chapters --help
usage: viz-manga-cli chapters [-h] [--free] series_slug

positional arguments:
  series_slug  Series title for which to lookup chapter ids from the Viz site.

options:
  -h, --help   show this help message and exit
  --free       Only show publicly available free chapters for the series.

>>> viz-manga-cli chapters 7th-garden

{'title': 'ch-1', 'id': '15220', 'link': 'https://www.viz.com/shonenjump/7th-garden-chapter-1/chapter/15220', 'is_free': True}
{'title': 'ch-2', 'id': '15221', 'link': 'https://www.viz.com/shonenjump/7th-garden-chapter-2/chapter/15221', 'is_free': True}
{'title': 'ch-3', 'id': '15222', 'link': 'https://www.viz.com/shonenjump/7th-garden-chapter-3/chapter/15222', 'is_free': True}
{'title': 'ch-4', 'id': '15223', 'link': 'https://www.viz.com/shonenjump/7th-garden-chapter-4/chapter/15223', 'is_free': False}
{'title': 'ch-5', 'id': '15224', 'link': 'https://www.viz.com/shonenjump/7th-garden-chapter-5/chapter/15224', 'is_free': False}

Fetch Chapter

>>> viz-manga-cli fetch --help
usage: viz-manga-cli fetch [-h] [--directory DIRECTORY] slug

positional arguments:
  slug                  Chapter id or series name obtained from the Viz site.

options:
  -h, --help            show this help message and exit
  --directory DIRECTORY
                        Output directory to save the deobfuscated pages.

>>> viz-manga-cli fetch 15220 --directory images/

INFO:root:Getting 79 pages for Root 1: The Demon's Servant
Successfully retrieved chapter 15220

Fetch all free chapters from a series

IMPORTANT: This is for reading purposes only, please delete after reading.

If a series slug is specified for fetch, it will try to retrieve all free chapters of the series, placing each chapter into it's own sub-directory. If a directory folder already exists for the chapter, the cli will skip that chapter.

>>> viz-manga-cli fetch one-piece --directory images/

INFO:root:Getting 18 pages for One Piece Chapter 1049.0
INFO:root:Successfully retrieved chapter ch-1049 at: images/ch-1049
INFO:root:Getting 18 pages for One Piece Chapter 1048.0
INFO:root:Successfully retrieved chapter ch-1048 at: images/ch-1048
INFO:root:Getting 20 pages for One Piece Chapter 1047.0
INFO:root:Successfully retrieved chapter ch-1047 at: images/ch-1047
INFO:root:Successfully retrieved chapter ch-3 at: images/ch-3
INFO:root:Getting 25 pages for Chapter 2: They Call Him “Straw Hat Luffy”
INFO:root:Successfully retrieved chapter ch-2 at: images/ch-2
INFO:root:Getting 55 pages for Chapter 1: Romance Dawn
INFO:root:Successfully retrieved chapter ch-1 at: images/ch-1

Docker

>>> docker build -t viz-manga .
>>> docker run -v /home/user/images/:/app/images viz-manga fetch 24297 --directory images/

INFO:root:Getting 20 pages for One Piece Chapter 1047.0
Successfully retrieved chapter 24297

Project details


Download files

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

Source Distribution

viz-manga-0.1.4.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

viz_manga-0.1.4-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file viz-manga-0.1.4.tar.gz.

File metadata

  • Download URL: viz-manga-0.1.4.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for viz-manga-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a3f3f6e9fa2010d40b1472a335619e58d03b5071e96397799b24d0a3511ee73c
MD5 7a14b954fa83afa7e2bd360036b3c0e6
BLAKE2b-256 94245e96c7c0e224c63f44d9ae99a6359db352a82215e77d64daecef4f559701

See more details on using hashes here.

File details

Details for the file viz_manga-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: viz_manga-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for viz_manga-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9039299c316d7dcd4bc3dca057bfeb082b4da183c12d47c288fdc18c19a205cc
MD5 d05b25dc741f4eff03338e0fddc859c9
BLAKE2b-256 0f6fc4ed4d9b6b3b8d21281fef364d293844433b284d72f59b4f4022480abb26

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page