|
|
|
@ -68,7 +68,7 @@ abstract class ChanRepository(
|
|
|
|
largeCoverUrl = root.getElementById("cover")?.attr("src")?.withDomain(domain),
|
|
|
|
largeCoverUrl = root.getElementById("cover")?.attr("src")?.withDomain(domain),
|
|
|
|
chapters = root.select("table.table_cha").flatMap { table ->
|
|
|
|
chapters = root.select("table.table_cha").flatMap { table ->
|
|
|
|
table.select("div.manga2")
|
|
|
|
table.select("div.manga2")
|
|
|
|
}.mapNotNull { it.selectFirst("a") }.mapIndexedNotNull { i, a ->
|
|
|
|
}.mapNotNull { it.selectFirst("a") }.reversed().mapIndexedNotNull { i, a ->
|
|
|
|
val href = a.attr("href")
|
|
|
|
val href = a.attr("href")
|
|
|
|
?.withDomain(domain) ?: return@mapIndexedNotNull null
|
|
|
|
?.withDomain(domain) ?: return@mapIndexedNotNull null
|
|
|
|
MangaChapter(
|
|
|
|
MangaChapter(
|
|
|
|
@ -93,8 +93,9 @@ abstract class ChanRepository(
|
|
|
|
}
|
|
|
|
}
|
|
|
|
val json = data.substring(pos).substringAfter('[').substringBefore(';')
|
|
|
|
val json = data.substring(pos).substringAfter('[').substringBefore(';')
|
|
|
|
.substringBeforeLast(']')
|
|
|
|
.substringBeforeLast(']')
|
|
|
|
return json.split(",").map {
|
|
|
|
return json.split(",").mapNotNull {
|
|
|
|
val url = it.trim().removeSurrounding('"')
|
|
|
|
it.trim().removeSurrounding('"').takeUnless(String::isBlank)
|
|
|
|
|
|
|
|
}.map { url ->
|
|
|
|
MangaPage(
|
|
|
|
MangaPage(
|
|
|
|
id = url.longHashCode(),
|
|
|
|
id = url.longHashCode(),
|
|
|
|
url = url,
|
|
|
|
url = url,
|
|
|
|
|