From e5898e37b2efb9ebe5e8736bc792565847f2ad29 Mon Sep 17 00:00:00 2001 From: Ahmed gamal <12355.ahmedgamal.com@gmail.com> Date: Sun, 30 Oct 2022 14:50:20 +0200 Subject: [PATCH] update for anime4up, animetitans (#991) --- src/ar/anime4up/build.gradle | 8 +- .../animeextension/ar/anime4up/Anime4Up.kt | 124 ++++++++++++++--- .../extractors/GdrivePlayerExtractor.kt | 126 ++++++++++++++++++ .../anime4up/extractors/MoshahdaExtractor.kt | 33 +++++ .../ar/anime4up/extractors/SharedExtractor.kt | 19 +++ .../ar/anime4up/extractors/VidBomExtractor.kt | 54 ++++++++ .../anime4up/extractors/VidYardExtractor.kt | 22 +++ src/ar/animetitans/build.gradle | 3 +- .../ar/animetitans/AnimeTitans.kt | 26 +++- .../extractors/GdrivePlayerExtractor.kt | 126 ++++++++++++++++++ .../extractors/VidYardExtractor.kt | 22 +++ 11 files changed, 541 insertions(+), 22 deletions(-) create mode 100644 src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/extractors/GdrivePlayerExtractor.kt create mode 100644 src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/extractors/MoshahdaExtractor.kt create mode 100644 src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/extractors/SharedExtractor.kt create mode 100644 src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/extractors/VidBomExtractor.kt create mode 100644 src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/extractors/VidYardExtractor.kt create mode 100644 src/ar/animetitans/src/eu/kanade/tachiyomi/animeextension/ar/animetitans/extractors/GdrivePlayerExtractor.kt create mode 100644 src/ar/animetitans/src/eu/kanade/tachiyomi/animeextension/ar/animetitans/extractors/VidYardExtractor.kt diff --git a/src/ar/anime4up/build.gradle b/src/ar/anime4up/build.gradle index 0817a502b..3e80a02f5 100644 --- a/src/ar/anime4up/build.gradle +++ b/src/ar/anime4up/build.gradle @@ -5,8 +5,14 @@ ext { extName = 'Anime4up' pkgNameSuffix = 'ar.anime4up' extClass = '.Anime4Up' - extVersionCode = 31 + extVersionCode = 32 libVersion = '13' } +dependencies { + implementation(project(':lib-fembed-extractor')) + implementation(project(':lib-streamsb-extractor')) + implementation "dev.datlag.jsunpacker:jsunpacker:1.0.1" +} + apply from: "$rootDir/common.gradle" diff --git a/src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4Up.kt b/src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4Up.kt index da9844ae7..3855db286 100644 --- a/src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4Up.kt +++ b/src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4Up.kt @@ -2,8 +2,14 @@ package eu.kanade.tachiyomi.animeextension.ar.anime4up import android.app.Application import android.content.SharedPreferences +import android.util.Log import androidx.preference.ListPreference import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animeextension.ar.anime4up.extractors.GdrivePlayerExtractor +import eu.kanade.tachiyomi.animeextension.ar.anime4up.extractors.MoshahdaExtractor +import eu.kanade.tachiyomi.animeextension.ar.anime4up.extractors.SharedExtractor +import eu.kanade.tachiyomi.animeextension.ar.anime4up.extractors.VidBomExtractor +import eu.kanade.tachiyomi.animeextension.ar.anime4up.extractors.VidYardExtractor import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource import eu.kanade.tachiyomi.animesource.model.AnimeFilter import eu.kanade.tachiyomi.animesource.model.AnimeFilterList @@ -11,6 +17,8 @@ import eu.kanade.tachiyomi.animesource.model.SAnime import eu.kanade.tachiyomi.animesource.model.SEpisode import eu.kanade.tachiyomi.animesource.model.Video import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource +import eu.kanade.tachiyomi.lib.fembedextractor.FembedExtractor +import eu.kanade.tachiyomi.lib.streamsbextractor.StreamSBExtractor import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.util.asJsoup @@ -30,7 +38,7 @@ class Anime4Up : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val name = "Anime4Up" - override val baseUrl = "https://anime4up.vip" + override val baseUrl = "https://wc.anime4up.vip" override val lang = "ar" @@ -44,7 +52,7 @@ class Anime4Up : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override fun headersBuilder(): Headers.Builder { return super.headersBuilder() - .add("Referer", "https://anime4up.vip/") // https://s12.gemzawy.com https://moshahda.net + .add("Referer", "https://wc.anime4up.vip/") // https://s12.gemzawy.com https://moshahda.net } // Popular @@ -118,30 +126,110 @@ class Anime4Up : ConfigurableAnimeSource, ParsedAnimeHttpSource() { // Call POST val referer = response.request.url.encodedPath val newHeaders = Headers.headersOf("referer", "$postUrl") - val ifram1 = client.newCall(POST(postUrl, newHeaders, body)).execute().asJsoup() - val iframe2 = ifram1.select("li[data-i=moshahda] a").attr("data-ep-url") + val iframeResponse = client.newCall(POST(postUrl, newHeaders, body)).execute().asJsoup() + /*val iframe2 = iframe.select("li[data-i=moshahda] a").attr("data-ep-url") val iframeResponse = client.newCall(GET(iframe2, newHeaders)) - .execute().asJsoup() - return videosFromElement(iframeResponse.selectFirst(videoListSelector())) + .execute().asJsoup()*/ + return videosFromElement(iframeResponse) } } - override fun videoListSelector() = "script:containsData(m3u8)" + // override fun videoListSelector() = "script:containsData(m3u8)" + override fun videoListSelector() = "li[data-i] a" private fun videosFromElement(element: Element): List