From 6fcf3785efce4dd32f4f3e9b769b1ba9aa0c1e75 Mon Sep 17 00:00:00 2001 From: Naga <94557604+NagaYZ@users.noreply.github.com> Date: Wed, 20 Mar 2024 10:10:54 +0100 Subject: [PATCH] fix #591 --- .../koitharu/kotatsu/parsers/site/zh/Baozimh.kt | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/zh/Baozimh.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/zh/Baozimh.kt index 66df8782..e4e3981d 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/zh/Baozimh.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/zh/Baozimh.kt @@ -185,8 +185,8 @@ internal class Baozimh(context: MangaLoaderContext) : override suspend fun getPages(chapter: MangaChapter): List { val doc = webClient.httpGet(chapter.url.toAbsoluteUrl(domain)).parseHtml() val pagesList = doc.requireElementById("__nuxt") - val chapterLink = doc.select("link[rel=canonical]").attr("href") - val nextChapterLink = doc.select("div.next_chapter a").attr("href") + var chapterLink = doc.select("link[rel=canonical]").attr("href") + var nextChapterLink = doc.select("a#next-chapter").attr("href") var part = 2 val idSet = HashSet() var pages = pagesList.select("button.pure-button").map { btn -> @@ -201,11 +201,11 @@ internal class Baozimh(context: MangaLoaderContext) : ) } - val chapterPart = chapterLink.substringAfterLast("/").substringBefore(".html") - val nexChapterPart = nextChapterLink.substringAfterLast("/").substringBefore(".html") + var chapterPart = chapterLink.substringAfterLast("/").substringBefore(".html") + var nexChapterPart = nextChapterLink.substringAfterLast("/").substringBefore(".html") while (nextChapterLink != "" && (nexChapterPart == chapterPart + "_" + part.toString())){ - val doc2 = webClient.httpGet(nextChapterLink).parseHtml().requireElementById("__nuxt") - val pages2 = doc2.select("button.pure-button").mapNotNull { btn -> + val doc2 = webClient.httpGet(nextChapterLink).parseHtml() + val pages2 = doc2.requireElementById("__nuxt").select("button.pure-button").mapNotNull { btn -> val urlPage = btn.attr("on").substringAfter(": '").substringBefore("?t=") val id = generateUid(urlPage) if(!idSet.add(id)){ @@ -220,6 +220,10 @@ internal class Baozimh(context: MangaLoaderContext) : } pages = pages+pages2 part++ + chapterLink = doc2.select("link[rel=canonical]").attr("href") + nextChapterLink = doc2.select("a#next-chapter").attr("href") + chapterPart = chapterLink.substringAfterLast("/").substringBefore(".html").substringBeforeLast("_") + nexChapterPart = nextChapterLink.substringAfterLast("/").substringBefore(".html") } return pages }