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