Komik Cast - Fix no page found (#12154)

* Komik Cast - Fix no page found

* Komik Cast - Fix no page found
This commit is contained in:
(e)x(otic) Ne(e)t 2022-06-11 22:37:40 +07:00 committed by GitHub
parent dfb74d67d9
commit cbded92086
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 2 deletions

View File

@ -8,12 +8,18 @@ import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.source.model.Page
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json
import kotlinx.serialization.json.jsonArray
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.HttpUrl.Companion.toHttpUrlOrNull
import okhttp3.OkHttpClient
import okhttp3.Request
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.injectLazy
import java.util.concurrent.TimeUnit
class KomikCast : WPMangaStream("Komik Cast", "https://komikcast.me", "id") {
@ -151,7 +157,16 @@ class KomikCast : WPMangaStream("Komik Cast", "https://komikcast.me", "id") {
}
override fun pageListParse(document: Document): List<Page> {
return document.select("div#chapter_body .main-reading-area img.size-full")
val imageListRegex = Regex("chapterImages = (.*) \\|\\|")
val imageListJson = imageListRegex.find(document.toString())!!.destructured.toList()[0]
val imageList = json.parseToJsonElement(imageListJson).jsonObject
var imageServer = "cdn"
if (!imageList.containsKey(imageServer)) imageServer = imageList.keys.first()
val imageElement = imageList[imageServer]!!.jsonArray.joinToString("")
val doc = Jsoup.parse(json.decodeFromString(imageElement))
return doc.select("img.size-full")
.mapIndexed { i, img -> Page(i, "", img.attr("abs:Src")) }
}
@ -167,4 +182,6 @@ class KomikCast : WPMangaStream("Komik Cast", "https://komikcast.me", "id") {
Filter.Header("$name Project List page"),
ProjectFilter()
)
private val json: Json by injectLazy()
}

View File

@ -22,7 +22,7 @@ class WPMangaStreamGenerator : ThemeSourceGenerator {
SingleLang("Kanzenin", "https://kanzenin.xyz", "id", isNsfw = true),
SingleLang("KlanKomik", "https://klankomik.com", "id", overrideVersionCode = 1),
SingleLang("Komik AV", "https://komikav.com", "id", overrideVersionCode = 1),
SingleLang("Komik Cast", "https://komikcast.me", "id", overrideVersionCode = 10),
SingleLang("Komik Cast", "https://komikcast.me", "id", overrideVersionCode = 11),
SingleLang("Komik Station", "https://komikstation.co", "id", overrideVersionCode = 3),
SingleLang("KomikIndo.co", "https://komikindo.co", "id", className = "KomikindoCo", overrideVersionCode = 3),
SingleLang("Kuma Scans (Kuma Translation)", "https://kumascans.com", "en", className = "KumaScans", overrideVersionCode = 1),