From 7dd76fe0c9cf348bca1c4f3e6b986bd1619979ff Mon Sep 17 00:00:00 2001 From: AlphaBoom <30779939+AlphaBoom@users.noreply.github.com> Date: Thu, 6 Feb 2025 21:24:28 +0800 Subject: [PATCH] MangaGun: Fix image load (#7501) --- src/ja/mangagun/build.gradle | 2 +- .../tachiyomi/extension/ja/mangagun/MangaGun.kt | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/ja/mangagun/build.gradle b/src/ja/mangagun/build.gradle index 5dff7042a..997bd1798 100644 --- a/src/ja/mangagun/build.gradle +++ b/src/ja/mangagun/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.MangaGun' themePkg = 'fmreader' baseUrl = 'https://mangagun.net' - overrideVersionCode = 0 + overrideVersionCode = 1 } apply from: "$rootDir/common.gradle" diff --git a/src/ja/mangagun/src/eu/kanade/tachiyomi/extension/ja/mangagun/MangaGun.kt b/src/ja/mangagun/src/eu/kanade/tachiyomi/extension/ja/mangagun/MangaGun.kt index d39203997..64646bcc7 100644 --- a/src/ja/mangagun/src/eu/kanade/tachiyomi/extension/ja/mangagun/MangaGun.kt +++ b/src/ja/mangagun/src/eu/kanade/tachiyomi/extension/ja/mangagun/MangaGun.kt @@ -11,6 +11,7 @@ import okhttp3.Cookie import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.Request import org.jsoup.nodes.Document +import org.jsoup.nodes.Element import rx.Observable import java.util.Calendar @@ -31,6 +32,20 @@ class MangaGun : FMReader("MangaGun", "https://$DOMAIN", "ja") { override fun latestUpdatesRequest(page: Int): Request = mangaRequest("last_update", page) + override fun getImgAttr(element: Element?): String? { + return when { + element == null -> null + element.hasAttr("data-original") -> element.attr("abs:data-original") + element.hasAttr("data-src") -> element.attr("abs:data-src") + element.hasAttr("data-bg") -> element.attr("abs:data-bg") + element.hasAttr("data-srcset") -> element.attr("abs:data-srcset") + element.hasAttr("style") -> element.attr("style").substringAfter("('") + .substringBefore("')") + + else -> element.attr("abs:src") + } + } + override fun fetchChapterList(manga: SManga): Observable> { val slug = manga.url.substringAfter("manga-").substringBefore(".html") @@ -115,7 +130,7 @@ class MangaGun : FMReader("MangaGun", "https://$DOMAIN", "ja") { } .select(".lazyload") .mapIndexed { i, e -> - Page(i, "", e.attr("abs:data-src")) + Page(i, "", e.attr("abs:data-srcset")) } } }