|
|
|
@ -21,6 +21,11 @@ internal class Manhwa18Cc(context: MangaLoaderContext) :
|
|
|
|
override val selectChapter = "li.a-h"
|
|
|
|
override val selectChapter = "li.a-h"
|
|
|
|
override val selectBodyPage = "div.read-content"
|
|
|
|
override val selectBodyPage = "div.read-content"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
init {
|
|
|
|
|
|
|
|
paginator.firstPage = 1
|
|
|
|
|
|
|
|
searchPaginator.firstPage = 1
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
override suspend fun getListPage(
|
|
|
|
override suspend fun getListPage(
|
|
|
|
page: Int,
|
|
|
|
page: Int,
|
|
|
|
query: String?,
|
|
|
|
query: String?,
|
|
|
|
@ -28,36 +33,30 @@ internal class Manhwa18Cc(context: MangaLoaderContext) :
|
|
|
|
sortOrder: SortOrder,
|
|
|
|
sortOrder: SortOrder,
|
|
|
|
): List<Manga> {
|
|
|
|
): List<Manga> {
|
|
|
|
val tag = tags.oneOrThrowIfMany()
|
|
|
|
val tag = tags.oneOrThrowIfMany()
|
|
|
|
|
|
|
|
|
|
|
|
val url = buildString {
|
|
|
|
val url = buildString {
|
|
|
|
append("https://")
|
|
|
|
append("https://")
|
|
|
|
append(domain)
|
|
|
|
append(domain)
|
|
|
|
val pages = page + 1
|
|
|
|
|
|
|
|
when {
|
|
|
|
when {
|
|
|
|
!query.isNullOrEmpty() -> {
|
|
|
|
!query.isNullOrEmpty() -> {
|
|
|
|
append("/page/")
|
|
|
|
append("/search?q=")
|
|
|
|
append(pages.toString())
|
|
|
|
|
|
|
|
append("/?s=")
|
|
|
|
|
|
|
|
append(query.urlEncoded())
|
|
|
|
append(query.urlEncoded())
|
|
|
|
append("&post_type=wp-manga&")
|
|
|
|
append("&page=")
|
|
|
|
|
|
|
|
append(page.toString())
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
!tags.isNullOrEmpty() -> {
|
|
|
|
!tags.isNullOrEmpty() -> {
|
|
|
|
append("/$tagPrefix")
|
|
|
|
append("/$tagPrefix")
|
|
|
|
append(tag?.key.orEmpty())
|
|
|
|
append(tag?.key.orEmpty())
|
|
|
|
if (pages > 1) {
|
|
|
|
if (page > 1) {
|
|
|
|
append("/page/")
|
|
|
|
append(page.toString())
|
|
|
|
append(pages.toString())
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
append("?")
|
|
|
|
append("?")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
else -> {
|
|
|
|
else -> {
|
|
|
|
|
|
|
|
|
|
|
|
append("/$listUrl")
|
|
|
|
append("/$listUrl")
|
|
|
|
if (pages > 1) {
|
|
|
|
if (page > 1) {
|
|
|
|
append("page/")
|
|
|
|
append(page)
|
|
|
|
append(pages)
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
append("?")
|
|
|
|
append("?")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -72,7 +71,6 @@ internal class Manhwa18Cc(context: MangaLoaderContext) :
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
val doc = webClient.httpGet(url).parseHtml()
|
|
|
|
val doc = webClient.httpGet(url).parseHtml()
|
|
|
|
|
|
|
|
|
|
|
|
return doc.select("div.manga-lists div.manga-item").map { div ->
|
|
|
|
return doc.select("div.manga-lists div.manga-item").map { div ->
|
|
|
|
val href = div.selectFirst("a")?.attrAsRelativeUrlOrNull("href") ?: div.parseFailed("Link not found")
|
|
|
|
val href = div.selectFirst("a")?.attrAsRelativeUrlOrNull("href") ?: div.parseFailed("Link not found")
|
|
|
|
Manga(
|
|
|
|
Manga(
|
|
|
|
@ -126,5 +124,4 @@ internal class Manhwa18Cc(context: MangaLoaderContext) :
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|