RedSquirrel87 / manga-downloader

A very simple application written in JAVA to download any chapters of any manga from the supported websites
36 stars 1 forks source link

Downloading from Mangareader.to #767

Open RedSquirrel87 opened 1 year ago

RedSquirrel87 commented 1 year ago

Original report by Anonymous.


Hello there!

When downloading from mangareader (almost) all the pages are corrupted. A single page/image is divided in blocks and shuffled like a puzzle. Page example

I'd like to use mangareader because I can download volumes at once instead of single chapters.

RedSquirrel87 commented 1 year ago

Original comment by Red Squirrel (Bitbucket: Red_Squirrel, GitHub: RedSquirrel87).


They are not corrupted, it seems they store their images in that way on their server and then use a decrypting function to display them on the web.

Does it happen only for volumes or even for single chapters?

RedSquirrel87 commented 1 year ago

Original comment by Celine Bregonje (Bitbucket: QuirkySun111, ).


Aha, that makes sense!
Just out of curiosity, what’s the reason behind storing images like that?

It occurs with both volumes and single chapters.

With some it happens that the first couple of images are how they supposed to be.

Will the possibility be there to make it function?

I’ve tried to download both volumes and chapters from Tadashi Game (https://mangareader.to/tomodachi-game-455) with Hakuneko also and the problem doesn’t happen there.
It’s happens to any manga I try to download with your downloader.

RedSquirrel87 commented 1 year ago

Original comment by Red Squirrel (Bitbucket: Red_Squirrel, GitHub: RedSquirrel87).


Just out of curiosity, what’s the reason behind storing images like that?

I think they simply don’t want you to download their contents with third party app like Manga Downloader xD

with Hakuneko also and the problem doesn’t happen there

Hakuneko use a Javascript function to replicate how a web browser would work, so they “reconstruct” the image after the download (here the full source code):

The issue is that Hakuneko is an app written already in Javascript, so they can simply import external JS code without too much hassle. Since Manga Downloader is a desktop application written in JAVA, it requires much more work because we need to deobfuscate that JS function and then convert it to JAVA language, also trying to find equivalent functions to all those ones which use direct references of web browser features (like canvas, window, document, page loading events, etc...). This will take quite a bit of time and effort