diff --git a/src/de/anime24/build.gradle b/src/de/anime24/build.gradle index 1ec2508c3..9052c7595 100644 --- a/src/de/anime24/build.gradle +++ b/src/de/anime24/build.gradle @@ -6,7 +6,7 @@ ext { extName = 'Anime24' pkgNameSuffix = 'de.anime24' extClass = '.Anime24' - extVersionCode = 4 + extVersionCode = 5 libVersion = '13' } diff --git a/src/de/anime24/src/eu/kanade/tachiyomi/animeextension/de/anime24/Anime24.kt b/src/de/anime24/src/eu/kanade/tachiyomi/animeextension/de/anime24/Anime24.kt index 0584e6f77..e4c6233cc 100644 --- a/src/de/anime24/src/eu/kanade/tachiyomi/animeextension/de/anime24/Anime24.kt +++ b/src/de/anime24/src/eu/kanade/tachiyomi/animeextension/de/anime24/Anime24.kt @@ -20,7 +20,6 @@ import okhttp3.Request import okhttp3.Response import org.jsoup.nodes.Document import org.jsoup.nodes.Element -import org.jsoup.select.Elements import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.api.get import kotlin.Exception @@ -33,7 +32,7 @@ class Anime24 : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val lang = "de" - override val supportsLatest = true + override val supportsLatest = false override val client: OkHttpClient = network.cloudflareClient @@ -41,19 +40,19 @@ class Anime24 : ConfigurableAnimeSource, ParsedAnimeHttpSource() { Injekt.get().getSharedPreferences("source_$id", 0x0000) } - override fun popularAnimeSelector(): String = "article.bs" + override fun popularAnimeSelector(): String = "div#blog-entries article" - override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/anime/?page=$page&status=&type=&order=popular") + override fun popularAnimeRequest(page: Int): Request = GET(baseUrl) override fun popularAnimeFromElement(element: Element): SAnime { val anime = SAnime.create() - anime.setUrlWithoutDomain(element.select("a.tip").attr("href")) - anime.thumbnail_url = element.select("div.limit img").attr("src") - anime.title = element.select("div.limit img").attr("title") + anime.setUrlWithoutDomain(element.select("div.post-thumbnail a").attr("href")) + anime.thumbnail_url = element.select("div.post-thumbnail a img ").attr("data-lazy-src") + anime.title = element.select("div.blog-entry-content h2.entry-title a").text() return anime } - override fun popularAnimeNextPageSelector(): String = "a.r" + override fun popularAnimeNextPageSelector(): String = "div.nav-links a.next" // episodes @@ -62,73 +61,50 @@ class Anime24 : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override fun episodeListParse(response: Response): List { val document = response.asJsoup() val episodeList = mutableListOf() - if (!document.select("div.eplister ul li a div.epl-num").text().contains("Movie")) { - val episodeElement = document.select("div.eplister ul") - val episode = parseEpisodesFromSeries(episodeElement) - episodeList.addAll(episode) - } else { - val episode = SEpisode.create() - episode.name = document.select("div.infox h1").text() - episode.episode_number = 1F - episode.setUrlWithoutDomain(document.select("div.eplister ul li a").attr("href")) + val episodeElement = document.select("div.entry-content div.su-spoiler") + episodeElement.forEach { + val episode = episodeFromElement(it) episodeList.add(episode) } - return episodeList - } - private fun parseEpisodesFromSeries(element: Elements): List { - val episodeElements = element.select("li") - return episodeElements.map { episodeFromElement(it) } + return episodeList } override fun episodeFromElement(element: Element): SEpisode { val episode = SEpisode.create() - episode.episode_number = element.select("a div.epl-num").text().toFloat() - val folge = element.select("a div.epl-num").text() - episode.name = "Folge $folge : " + element.select("a div.epl-title").text() - episode.setUrlWithoutDomain(element.select("a").attr("href")) + episode.episode_number = element.select("div.su-spoiler-title").text() + .substringAfter("Episode ").substringBefore(" ").toFloat() + episode.name = element.select("div.su-spoiler-title").text() + episode.url = (element.select("div.su-spoiler-content center iframe").attr("data-lazy-src")) return episode } // Video Extractor - override fun videoListParse(response: Response): List