fix async and remove .imageUrl() to add .src()

pull/229/head
devi 3 years ago
parent e5448649c3
commit 5e9bc4fcc7

@ -43,12 +43,11 @@ class HentaiVNParser(context: MangaLoaderContext) : MangaParser(context, MangaSo
val id = docs.location().substringAfterLast("/").substringBefore("-") val id = docs.location().substringAfterLast("/").substringBefore("-")
val infoEl = webClient.httpGet("/list-info-all-mobile.php?id_anime=$id".toAbsoluteUrl(domain)).parseHtml()
val genreUrl = Regex(""""(list-info-theloai-mobile\.php?.+)"""").find(docs.toString())?.groupValues?.get(1) val genreUrl = Regex(""""(list-info-theloai-mobile\.php?.+)"""").find(docs.toString())?.groupValues?.get(1)
val genre = webClient.httpGet("https://$domain/$genreUrl").parseHtml().select("a.tag") val genre = async { webClient.httpGet("https://$domain/$genreUrl").parseHtml().select("a.tag") }.await()
val stateDoc = webClient.httpGet("/list-info-time-mobile.php?id_anime=$id".toAbsoluteUrl(domain)).parseHtml() val infoEl = async { webClient.httpGet("/list-info-all-mobile.php?id_anime=$id".toAbsoluteUrl(domain)).parseHtml() }.await()
val stateDoc = async { webClient.httpGet("/list-info-time-mobile.php?id_anime=$id".toAbsoluteUrl(domain)).parseHtml() }.await()
manga.copy( manga.copy(
altTitle = infoEl.infoText("Tên Khác:"), altTitle = infoEl.infoText("Tên Khác:"),
@ -182,7 +181,7 @@ class HentaiVNParser(context: MangaLoaderContext) : MangaParser(context, MangaSo
publicUrl = relativeUrl.toAbsoluteUrl(domain), publicUrl = relativeUrl.toAbsoluteUrl(domain),
rating = RATING_UNKNOWN, rating = RATING_UNKNOWN,
isNsfw = true, isNsfw = true,
coverUrl = el.selectFirst("div.box-cover-2 img").imageUrl(), coverUrl = el.selectFirst("div.box-cover-2 img")?.src().orEmpty(),
tags = emptySet(), tags = emptySet(),
state = null, state = null,
author = null, author = null,
@ -244,17 +243,6 @@ class HentaiVNParser(context: MangaLoaderContext) : MangaParser(context, MangaSo
} }
} }
private fun Element?.imageUrl(): String {
if (this == null) {
return ""
}
return attrAsRelativeUrlOrNull("data-src")
?: attrAsRelativeUrlOrNull("data-srcset")
?: attrAsRelativeUrlOrNull("src")
?: ""
}
private fun Element.infoText(title: String) = selectFirst("span.info:contains($title)") private fun Element.infoText(title: String) = selectFirst("span.info:contains($title)")
?.parent() ?.parent()
?.select("span:not(.info) > a") ?.select("span:not(.info) > a")

@ -155,7 +155,7 @@ fun Element.attrOrNull(vararg names: String): String? {
} }
@JvmOverloads @JvmOverloads
fun Element.src(names: Array<String> = arrayOf("data-src", "data-cfsrc", "data-original", "data-cdn", "data-sizes", "data-lazy-src", "src")): String? { fun Element.src(names: Array<String> = arrayOf("data-src", "data-cfsrc", "data-original", "data-cdn", "data-sizes", "data-lazy-src", "data-srcset", "src")): String? {
for (name in names) { for (name in names) {
val value = attrAsAbsoluteUrlOrNull(name) val value = attrAsAbsoluteUrlOrNull(name)
if (value != null) { if (value != null) {

Loading…
Cancel
Save