Flameish / Novel-Grabber

Novel-Grabber can download novels from pretty much any webnovel and lightnovel site.
MIT License
481 stars 62 forks source link

[BUG] Webnovel broken #343

Open sbstratos79 opened 2 years ago

sbstratos79 commented 2 years ago

Describe the bug Webnovel has recently implemented a new Anti-TTS feature that loads Chinese text instead of the original novel text if the chapter page is loaded inside a TTS reader. The same thing seems to be happening with Novel-Grabber.

Screenshots image

Platform Windows 11 OpenJDK Runtime Environment Temurin-11.0.14.1+1 (build 11.0.14.1+1) OpenJDK 64-Bit Server VM Temurin-11.0.14.1+1 (build 11.0.14.1+1, mixed mode)

Additional context This is what I see if I load the chapter in a TTS reader. Image

Flameish commented 2 years ago

I took a quick look and it doesn't seem easily fixable / getting around, at least it's just for locked / premium chapters for now I think.

sbstratos79 commented 2 years ago

@Flameish For me, this issue was present for the chapters that I unlocked with Free Pass.

sah4001 commented 2 years ago

When I try and load a webnovel book it just says that the chapter container is not found, but it works from sources like scribble hub.

extraessen commented 2 years ago

Reference in new i When I try and load a webnovel book it just says that the chapter container is not found, but it works from sources like scribble hub.

Same here. When i am trying to update the novels, it is saying that container is not found. Maybe webnovel changed their container tags? The novels are also free novels.

Flameish commented 2 years ago

My current understanding is that they are using 3 parts for their protection.

  1. Chapter content is fetched by javascript at some point after loading.
  2. They are switching words around in a sentence, via CSS ordering.
  3. The previous 2 are not that complicated to get around but they are also using a randomly generated font to display the chinese characters as english ones.
sbstratos79 commented 2 years ago

Ngl, this "generate random fonts to display Chinese characters as English glyphs" is a really clever technique. I wonder if there's solutions already available for this or if this is the first time this kind of thing has been widely used.

Flameish commented 2 years ago

I've seen it once before but it wasnt generated on each page load so I just had to check and save the mapping of the characters and it was done. This one is a bit more complicated to bypass.

Flameish commented 2 years ago

The easiest would be to download the font and use it for that chapter, but this is only possible for reader apps and not in NGs case.

sbstratos79 commented 2 years ago

@Flameish Yeah.. raw text will still be Chinese.

Trafford666 commented 2 years ago

Is there a solution to this problem?

sbstratos79 commented 2 years ago

Is there a solution to this problem?

I don't think a solution has been found yet. A lot of websites that host Webnovel content have stopped posting updates for series published by Webnovel. The most straight forward method I can think of is to just use an OCR scanner to extract the text from the Webnovel website. I'm just reading chapters in the webnovel app instead of loading epubs in a TTS reader like I did before.