From 2f236071b9dc0555a4cc5e30b0659c566e2d552a Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 10 Oct 2024 21:26:28 +0200 Subject: [PATCH] Fix(es/Animefenix): fix empty list by bapeey (#298) --- src/es/animefenix/build.gradle | 2 +- .../es/animefenix/Animefenix.kt | 36 +++++++++---------- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/src/es/animefenix/build.gradle b/src/es/animefenix/build.gradle index 33da8c4d..61e7fe45 100644 --- a/src/es/animefenix/build.gradle +++ b/src/es/animefenix/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Animefenix' extClass = '.Animefenix' - extVersionCode = 40 + extVersionCode = 41 } apply from: "$rootDir/common.gradle" diff --git a/src/es/animefenix/src/eu/kanade/tachiyomi/animeextension/es/animefenix/Animefenix.kt b/src/es/animefenix/src/eu/kanade/tachiyomi/animeextension/es/animefenix/Animefenix.kt index 4ccd7ea5..4e597c5f 100644 --- a/src/es/animefenix/src/eu/kanade/tachiyomi/animeextension/es/animefenix/Animefenix.kt +++ b/src/es/animefenix/src/eu/kanade/tachiyomi/animeextension/es/animefenix/Animefenix.kt @@ -47,6 +47,7 @@ class Animefenix : ConfigurableAnimeSource, AnimeHttpSource() { private val preferences: SharedPreferences by lazy { Injekt.get().getSharedPreferences("source_$id", 0x0000) } companion object { + private val SERVER_REGEX = """tabsArray\['?\d+'?]\s*=\s*['\"](https[^'\"]+)['\"]""".toRegex() private const val PREF_QUALITY_KEY = "preferred_quality" private const val PREF_QUALITY_DEFAULT = "1080" private val QUALITY_LIST = arrayOf("1080", "720", "480", "360") @@ -65,14 +66,13 @@ class Animefenix : ConfigurableAnimeSource, AnimeHttpSource() { override fun popularAnimeParse(response: Response): AnimesPage { val document = response.asJsoup() - val elements = document.select("article.serie-card") - val nextPage = document.select("ul.pagination-list li a.pagination-link:contains(Siguiente)").any() + val elements = document.select("main > div.container > div.grid > div.group") + val nextPage = document.select("nav[aria-label=Pagination] span:containsOwn(Next)").any() val animeList = elements.map { element -> SAnime.create().apply { - setUrlWithoutDomain(element.select("figure.image a").attr("abs:href")) - title = element.select("div.title h3 a").text() - thumbnail_url = element.select("figure.image a img").attr("abs:src") - description = element.select("div.serie-card__information p").text() + setUrlWithoutDomain(element.selectFirst("a")!!.attr("abs:href")) + title = element.selectFirst("div h3.text-primary")!!.ownText() + thumbnail_url = element.selectFirst("img.object-cover")?.attr("abs:src") } } return AnimesPage(animeList, nextPage) @@ -96,12 +96,10 @@ class Animefenix : ConfigurableAnimeSource, AnimeHttpSource() { override fun episodeListParse(response: Response): List { val document = response.asJsoup() - return document.select("ul.anime-page__episode-list.is-size-6 li").map { it -> - val epNum = it.select("a span").text().replace("Episodio", "") + return document.select("div.container > div > ul > li").map { element -> SEpisode.create().apply { - episode_number = epNum.toFloat() - name = "Episodio $epNum" - setUrlWithoutDomain(it.select("a").attr("abs:href")) + name = element.selectFirst("span > span")!!.ownText() + setUrlWithoutDomain(element.selectFirst("a")!!.attr("abs:href")) } } } @@ -109,9 +107,8 @@ class Animefenix : ConfigurableAnimeSource, AnimeHttpSource() { override fun videoListParse(response: Response): List