[viHentai] Fix attempt 1

Draken 1 year ago
parent 2da8a4af84
commit 8c4a93d1dc

@ -209,7 +209,7 @@ internal class LxManga(context: MangaLoaderContext) : PagedMangaParser(context,
} }
private suspend fun availableTags(): Set<MangaTag> { private suspend fun availableTags(): Set<MangaTag> {
val url = "$domain/the-loai" val url = "https://$domain/the-loai"
val doc = webClient.httpGet(url).parseHtml() val doc = webClient.httpGet(url).parseHtml()
return doc.select("nav.grid.grid-cols-3.md\\:grid-cols-8 button").map { button -> return doc.select("nav.grid.grid-cols-3.md\\:grid-cols-8 button").map { button ->

@ -125,9 +125,8 @@ internal class viHentai(context: MangaLoaderContext) : PagedMangaParser(context,
return doc.select("div.grid div.relative").map { div -> return doc.select("div.grid div.relative").map { div ->
val href = div.selectFirst("a[href^=/truyen/]")?.attrOrNull("href") val href = div.selectFirst("a[href^=/truyen/]")?.attrOrNull("href")
?: div.parseFailed("Không thể tìm thấy nguồn ảnh của Manga này!") ?: div.parseFailed("Không thể tìm thấy nguồn ảnh của Manga này!")
val coverUrl = div.selectFirstOrThrow("div.cover").let { val coverUrl = div.selectFirst("div.cover")?.attr("style")
it.attrOrNull("data-bg") ?: it.attr("style").cssUrl()?.replace("s3.lxmanga.top", domain) ?.substringAfter("url('")?.substringBefore("')")
}.orEmpty()
Manga( Manga(
id = generateUid(href), id = generateUid(href),
@ -137,7 +136,7 @@ internal class viHentai(context: MangaLoaderContext) : PagedMangaParser(context,
publicUrl = href.toAbsoluteUrl(domain), publicUrl = href.toAbsoluteUrl(domain),
rating = RATING_UNKNOWN, rating = RATING_UNKNOWN,
isNsfw = true, isNsfw = true,
coverUrl = coverUrl, coverUrl = coverUrl.orEmpty(),
tags = setOf(), tags = setOf(),
state = null, state = null,
author = null, author = null,
@ -190,22 +189,15 @@ internal class viHentai(context: MangaLoaderContext) : PagedMangaParser(context,
override suspend fun getPages(chapter: MangaChapter): List<MangaPage> { override suspend fun getPages(chapter: MangaChapter): List<MangaPage> {
val fullUrl = chapter.url.toAbsoluteUrl(domain) val fullUrl = chapter.url.toAbsoluteUrl(domain)
val doc = webClient.httpGet(fullUrl).parseHtml() val doc = webClient.httpGet(fullUrl).parseHtml()
return doc.select("div.text-center div.lazy") return doc.select("div.text-center img.lazy").mapNotNull { img ->
.mapNotNull { div -> val url = img.attr("data-src")
val url = div.attr("data-src") MangaPage(
if (url.endsWith(".jpg", ignoreCase = true) || id = generateUid(url),
url.endsWith(".png", ignoreCase = true) url = url,
) { preview = null,
MangaPage( source = source,
id = generateUid(url), )
url = url, }
preview = null,
source = source,
)
} else {
null
}
}
} }
private fun parseDateTime(dateStr: String): Long = runCatching { private fun parseDateTime(dateStr: String): Long = runCatching {

Loading…
Cancel
Save