From ea74d2b11cf995dc3ae25a57309f0f280cbba2c5 Mon Sep 17 00:00:00 2001 From: w1x8l <100049531+w1x8l@users.noreply.github.com> Date: Wed, 17 Aug 2022 16:16:12 -0500 Subject: [PATCH] ManhwasNet: update css selectors (#13034) * ManhwasNet: update css selectors * ManhwasNet: fixed status always as completed --- src/es/manhwasnet/build.gradle | 2 +- .../extension/es/manhwasnet/ManhwasNet.kt | 64 +++++++++---------- 2 files changed, 32 insertions(+), 34 deletions(-) diff --git a/src/es/manhwasnet/build.gradle b/src/es/manhwasnet/build.gradle index f794ab4ed..774ba3745 100644 --- a/src/es/manhwasnet/build.gradle +++ b/src/es/manhwasnet/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'Manhwas.net' pkgNameSuffix = 'es.manhwasnet' extClass = '.ManhwasNet' - extVersionCode = 2 + extVersionCode = 3 isNsfw = true } diff --git a/src/es/manhwasnet/src/eu/kanade/tachiyomi/extension/es/manhwasnet/ManhwasNet.kt b/src/es/manhwasnet/src/eu/kanade/tachiyomi/extension/es/manhwasnet/ManhwasNet.kt index 46c82b233..1feaa7e61 100644 --- a/src/es/manhwasnet/src/eu/kanade/tachiyomi/extension/es/manhwasnet/ManhwasNet.kt +++ b/src/es/manhwasnet/src/eu/kanade/tachiyomi/extension/es/manhwasnet/ManhwasNet.kt @@ -11,7 +11,6 @@ import eu.kanade.tachiyomi.util.asJsoup import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.Request import okhttp3.Response -import org.jsoup.nodes.Document import org.jsoup.nodes.Element class ManhwasNet : HttpSource() { @@ -22,13 +21,13 @@ class ManhwasNet : HttpSource() { override fun chapterListParse(response: Response): List { val document = response.asJsoup() - return document.select(".eplister a").map { chapterEl -> - val chapterUrl = getUrlWithoutDomain(chapterEl.attr("href")) + return document.select(".listing-chapters_wrap .chapter-link a").map { chapterAnchor -> + val chapterUrl = getUrlWithoutDomain(chapterAnchor.attr("href")) val chapterName = chapterUrl.substringAfterLast("-") val chapter = SChapter.create() - chapter.url = chapterUrl - chapter.name = chapterName chapter.chapter_number = chapterName.toFloat() + chapter.name = chapterName + chapter.url = chapterUrl chapter } } @@ -39,8 +38,8 @@ class ManhwasNet : HttpSource() { override fun latestUpdatesParse(response: Response): MangasPage { val document = response.asJsoup() - val bixbox = document.selectFirst(".bixbox") - val manhwas = parseManhwas(bixbox) + val content = document.selectFirst(".d-flex[style=\"flex-wrap:wrap;\"]") + val manhwas = parseManhwas(content) return MangasPage(manhwas, false) } @@ -50,16 +49,16 @@ class ManhwasNet : HttpSource() { override fun mangaDetailsParse(response: Response): SManga { val document = response.asJsoup() + val profileManga = document.selectFirst(".profile-manga") val manhwa = SManga.create() + manhwa.title = profileManga.selectFirst(".post-title h1").text() + manhwa.thumbnail_url = profileManga.selectFirst(".summary_image img").attr("src") + manhwa.description = profileManga.selectFirst(".description-summary p").text() - manhwa.title = document.selectFirst(".entry-title").text() - manhwa.thumbnail_url = document.selectFirst(".thumb img").attr("src") - manhwa.description = document.selectFirst(".entry-content").text() - - val estado = document.select(".imptdt a")[1] + val status = profileManga.selectFirst(".post-status .post-content_item:nth-child(2)").text() manhwa.status = SManga.ONGOING - if (estado.text() == "Finalizado") manhwa.status = SManga.COMPLETED + if (!status.contains("publishing")) manhwa.status = SManga.COMPLETED return manhwa } @@ -73,10 +72,7 @@ class ManhwasNet : HttpSource() { } override fun popularMangaParse(response: Response): MangasPage { - val document = response.asJsoup() - val manhwas = parseManhwas(document) - val hasNextPage = document.selectFirst(".wpag-li.page-item [rel=\"next\"]") != null - return MangasPage(manhwas, hasNextPage) + return parseLibraryMangas(response) } override fun popularMangaRequest(page: Int): Request { @@ -88,10 +84,7 @@ class ManhwasNet : HttpSource() { } override fun searchMangaParse(response: Response): MangasPage { - val document = response.asJsoup() - val manhwas = parseManhwas(document) - val hasNextPage = document.selectFirst(".wpag-li.page-item [rel=\"next\"]") != null - return MangasPage(manhwas, hasNextPage) + return parseLibraryMangas(response) } override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { @@ -103,20 +96,25 @@ class ManhwasNet : HttpSource() { return GET(url.build().toString()) } - private fun parseManhwas(element: Element): List { - return element.select(".bsx").map { bxs -> - val manhwa = SManga.create() - manhwa.url = getUrlWithoutDomain( - transformUrl(bxs.selectFirst("a").attr("href")) - ) - manhwa.title = bxs.selectFirst(".tt").text().trim() - manhwa.thumbnail_url = bxs.selectFirst(".ts-post-image").attr("src") - manhwa - } + private fun parseLibraryMangas(response: Response): MangasPage { + val document = response.asJsoup() + val content = document.selectFirst(".d-flex[style=\"flex-wrap:wrap;\"]") + val manhwas = parseManhwas(content) + val hasNextPage = document.selectFirst(".pagination .page-link[rel=\"next\"]") != null + return MangasPage(manhwas, hasNextPage) } - private fun parseManhwas(document: Document): List { - return parseManhwas(document.body()) + private fun parseManhwas(element: Element): List { + return element.select(".series-card").map { seriesCard -> + val seriesCol = seriesCard.parent() + val manhwa = SManga.create() + manhwa.title = seriesCol.selectFirst(".series-title").text().trim() + manhwa.thumbnail_url = seriesCard.selectFirst(".thumb-img").attr("src") + manhwa.url = getUrlWithoutDomain( + transformUrl(seriesCard.selectFirst("a").attr("href")) + ) + manhwa + } } private fun transformUrl(url: String): String {