MangaFast: various fixes (#6346)
This commit is contained in:
parent
0d1ad39fc1
commit
3c106cfb35
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'MangaFast'
|
extName = 'MangaFast'
|
||||||
pkgNameSuffix = 'en.mangafast'
|
pkgNameSuffix = 'en.mangafast'
|
||||||
extClass = '.MangaFast'
|
extClass = '.MangaFast'
|
||||||
extVersionCode = 6
|
extVersionCode = 7
|
||||||
libVersion = '1.2'
|
libVersion = '1.2'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27,46 +27,55 @@ class MangaFast : ParsedHttpSource() {
|
|||||||
return GET("$baseUrl/list-manga" + if (page > 1) "/page/$page" else "", headers)
|
return GET("$baseUrl/list-manga" + if (page > 1) "/page/$page" else "", headers)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun popularMangaSelector() = ".daftar .bge"
|
override fun popularMangaSelector() = ".list-content .ls4 .ls4v"
|
||||||
|
|
||||||
override fun popularMangaFromElement(element: Element) = SManga.create().apply {
|
override fun popularMangaFromElement(element: Element) = SManga.create().apply {
|
||||||
setUrlWithoutDomain(element.select(".bgei a").attr("href"))
|
val a = element.select("a")
|
||||||
title = element.select(".kan h3").text().trim()
|
setUrlWithoutDomain(a.attr("href"))
|
||||||
thumbnail_url = element.select(".bgei img").attr("src")
|
title = a.attr("title")
|
||||||
|
thumbnail_url = a.select("img").attr("src")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun popularMangaNextPageSelector() = ".btn-w a:contains(Next »)"
|
override fun popularMangaNextPageSelector() = ".btn-w a:contains(Next »)"
|
||||||
|
|
||||||
// latest
|
// latest
|
||||||
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl", headers)
|
override fun latestUpdatesRequest(page: Int) = GET(baseUrl, headers)
|
||||||
|
|
||||||
override fun latestUpdatesSelector() = ".ls8w div.ls8"
|
override fun latestUpdatesSelector() = ".ls8w div.ls8 .ls8v"
|
||||||
|
|
||||||
override fun latestUpdatesFromElement(element: Element) = SManga.create().apply {
|
override fun latestUpdatesFromElement(element: Element) = popularMangaFromElement(element)
|
||||||
setUrlWithoutDomain(element.select(".ls8j a").attr("href"))
|
|
||||||
title = element.select("h4").text().trim()
|
|
||||||
thumbnail_url = element.select(".ls8v img").attr("src")
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun latestUpdatesNextPageSelector(): String? = null
|
override fun latestUpdatesNextPageSelector(): String? = null
|
||||||
|
|
||||||
// search
|
// search
|
||||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) = GET("$baseUrl/page/$page/?s=$query", headers)
|
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) = GET("$baseUrl/page/$page/?s=$query", headers)
|
||||||
|
|
||||||
override fun searchMangaSelector() = latestUpdatesSelector()
|
override fun searchMangaSelector() = popularMangaSelector()
|
||||||
|
|
||||||
override fun searchMangaFromElement(element: Element) = latestUpdatesFromElement(element)
|
override fun searchMangaFromElement(element: Element) = popularMangaFromElement(element)
|
||||||
|
|
||||||
override fun searchMangaNextPageSelector() = latestUpdatesNextPageSelector()
|
override fun searchMangaNextPageSelector() = popularMangaNextPageSelector()
|
||||||
|
|
||||||
// manga details
|
// manga details
|
||||||
override fun mangaDetailsParse(document: Document) = SManga.create().apply {
|
override fun mangaDetailsParse(document: Document): SManga {
|
||||||
title = document.select("#Judul h1").text()
|
val articleTitle = document.select("article header[id=article-title]")
|
||||||
author = document.select("td[itemprop=creator]").text().trim()
|
val articleInfo = document.select("article section[id=article-info]")
|
||||||
status = parseStatus(document.select(".inftable").text())
|
|
||||||
genre = document.select("a[itemprop=genre]").joinToString { it.text() }
|
val manga = SManga.create().apply {
|
||||||
description = document.select("#Judul .desc").first().text().substringAfter(title).substringAfter(". ")
|
title = articleTitle.select("h1[itemprop=name]").text().trim()
|
||||||
thumbnail_url = document.select("#Informasi .row img.shadow").first().attr("src")
|
description = articleTitle.select("p.desc").text().trim()
|
||||||
|
thumbnail_url = articleInfo.select("img.shadow").attr("src")
|
||||||
|
}
|
||||||
|
articleInfo.select("table.inftable tbody tr").forEach {
|
||||||
|
val row = it.select("td")
|
||||||
|
when (row[0].text()) {
|
||||||
|
"Genre" -> manga.genre = row[1].text().trim().removeSuffix(",")
|
||||||
|
"Author" -> manga.author = row[1].text().trim()
|
||||||
|
"Status" -> manga.status = parseStatus(row[1].text())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return manga
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun parseStatus(status: String) = when {
|
private fun parseStatus(status: String) = when {
|
||||||
@ -79,9 +88,9 @@ class MangaFast : ParsedHttpSource() {
|
|||||||
override fun chapterListSelector() = ".chapter-link"
|
override fun chapterListSelector() = ".chapter-link"
|
||||||
|
|
||||||
override fun chapterFromElement(element: Element) = SChapter.create().apply {
|
override fun chapterFromElement(element: Element) = SChapter.create().apply {
|
||||||
setUrlWithoutDomain(element.select("a").attr("href"))
|
setUrlWithoutDomain(element.attr("href"))
|
||||||
name = element.select(".text-left").text()
|
name = element.select(".left").text()
|
||||||
date_upload = parseDate(element.select(".text-right").text())
|
date_upload = parseDate(element.select(".right").text())
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun parseDate(text: String): Long {
|
private fun parseDate(text: String): Long {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user