Fix RealmScans (#14344)

This commit is contained in:
AntsyLich 2022-11-24 22:00:38 +06:00 committed by GitHub
parent 70b3cca0b1
commit 394a2be3b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 29 deletions

View File

@ -3,11 +3,8 @@ package eu.kanade.tachiyomi.extension.en.realmscans
import eu.kanade.tachiyomi.multisrc.mangathemesia.MangaThemesia import eu.kanade.tachiyomi.multisrc.mangathemesia.MangaThemesia
import eu.kanade.tachiyomi.network.interceptor.rateLimit import eu.kanade.tachiyomi.network.interceptor.rateLimit
import eu.kanade.tachiyomi.source.model.Page import eu.kanade.tachiyomi.source.model.Page
import kotlinx.serialization.json.jsonArray
import kotlinx.serialization.json.jsonPrimitive
import okhttp3.OkHttpClient import okhttp3.OkHttpClient
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import java.lang.IllegalArgumentException
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
class RealmScans : MangaThemesia( class RealmScans : MangaThemesia(
@ -22,30 +19,8 @@ class RealmScans : MangaThemesia(
.build() .build()
override fun pageListParse(document: Document): List<Page> { override fun pageListParse(document: Document): List<Page> {
val htmlPages = document.select(pageSelector) return super.pageListParse(document)
.mapIndexed { i, img -> .distinctBy { it.imageUrl }
val url = img.attr("data-wpfc-original-src") .mapIndexed { i, page -> Page(i, imageUrl = page.imageUrl) }
.ifEmpty { img.attr("abs:src") }
Page(i, "", url)
}
countViews(document)
// Some sites also loads pages via javascript
if (htmlPages.isNotEmpty()) { return htmlPages }
val docString = document.toString()
val imageListJson = JSON_IMAGE_LIST_REGEX.find(docString)?.destructured?.toList()?.get(0).orEmpty()
val imageList = try {
json.parseToJsonElement(imageListJson).jsonArray
} catch (_: IllegalArgumentException) {
emptyList()
}
val scriptPages = imageList.mapIndexed { i, jsonEl ->
Page(i, "", jsonEl.jsonPrimitive.content)
}
return scriptPages
} }
} }

View File

@ -91,7 +91,7 @@ class MangaThemesiaGenerator : ThemeSourceGenerator {
SingleLang("Raiki Scan", "https://raikiscan.com", "es"), SingleLang("Raiki Scan", "https://raikiscan.com", "es"),
SingleLang("Rawkuma", "https://rawkuma.com/", "ja"), SingleLang("Rawkuma", "https://rawkuma.com/", "ja"),
SingleLang("Readkomik", "https://readkomik.com", "en", className = "ReadKomik", overrideVersionCode = 1), SingleLang("Readkomik", "https://readkomik.com", "en", className = "ReadKomik", overrideVersionCode = 1),
SingleLang("Realm Scans", "https://realmscans.com", "en", overrideVersionCode = 3), SingleLang("Realm Scans", "https://realmscans.com", "en", overrideVersionCode = 4),
SingleLang("Ryukonesia", "https://ryukonesia.net", "id"), SingleLang("Ryukonesia", "https://ryukonesia.net", "id"),
SingleLang("Sekaikomik", "https://www.sekaikomik.live", "id", isNsfw = true, overrideVersionCode = 9), SingleLang("Sekaikomik", "https://www.sekaikomik.live", "id", isNsfw = true, overrideVersionCode = 9),
SingleLang("Sekaikomik", "https://www.sekaikomik.site", "id", isNsfw = true, overrideVersionCode = 8), SingleLang("Sekaikomik", "https://www.sekaikomik.site", "id", isNsfw = true, overrideVersionCode = 8),