diff --git a/AnimeONProvider/build.gradle.kts b/AnimeONProvider/build.gradle.kts index ccc1c4f..88ff2c7 100644 --- a/AnimeONProvider/build.gradle.kts +++ b/AnimeONProvider/build.gradle.kts @@ -1,5 +1,5 @@ // use an integer for version numbers -version = 6 +version = 7 dependencies{ implementation("com.google.code.gson:gson:2.9.0") diff --git a/AnimeONProvider/src/main/kotlin/com/lagradost/AnimeONProvider.kt b/AnimeONProvider/src/main/kotlin/com/lagradost/AnimeONProvider.kt index e9908c1..3988e4a 100644 --- a/AnimeONProvider/src/main/kotlin/com/lagradost/AnimeONProvider.kt +++ b/AnimeONProvider/src/main/kotlin/com/lagradost/AnimeONProvider.kt @@ -67,7 +67,10 @@ class AnimeONProvider : MainAPI() { // Done override suspend fun getMainPage(page: Int, request: MainPageRequest): HomePageResponse { if(!request.data.contains("pageIndex") && page !=1) return HomePageResponse(emptyList()) - val document = app.get(request.data.format(page)).text + val document = app.get(request.data.format(page), + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text // Нове if(request.data.contains("pageIndex")) { @@ -111,7 +114,10 @@ class AnimeONProvider : MainAPI() { val animeJSON = Gson() .fromJson( - app.get(url.replace("/anime/", "/api/anime/")).text, + app.get(url.replace("/anime/", "/api/anime/"), + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text, AnimeInfoModel::class.java ) @@ -140,9 +146,15 @@ class AnimeONProvider : MainAPI() { val episodes = mutableListOf() // Get all fundub for title and parse only first fundub/player - val fundubs = Gson().fromJson>(app.get("${apiUrl}/player/fundubs/${animeJSON.id}").text, listFundub) + val fundubs = Gson().fromJson>(app.get("${apiUrl}/player/fundubs/${animeJSON.id}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text, listFundub) - Gson().fromJson>(app.get("${apiUrl}/player/episodes/${fundubs?.get(0)?.player?.get(0)?.id}/${fundubs?.get(0)?.fundub?.id}").text, listFundubEpisodes)?.map { epd -> // Episode + Gson().fromJson>(app.get("${apiUrl}/player/episodes/${fundubs?.get(0)?.player?.get(0)?.id}/${fundubs?.get(0)?.fundub?.id}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text, listFundubEpisodes)?.map { epd -> // Episode episodes.add( Episode( "${animeJSON.id}, ${epd.episode}", @@ -200,14 +212,23 @@ class AnimeONProvider : MainAPI() { callback: (ExtractorLink) -> Unit ): Boolean { val dataList = data.split(", ") - val fundubs = Gson().fromJson>(app.get("${apiUrl}/player/fundubs/${dataList[0]}").text, listFundub) + val fundubs = Gson().fromJson>(app.get("${apiUrl}/player/fundubs/${dataList[0]}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text, listFundub) if(dataList.size == 2){ fundubs.map { dub -> - Gson().fromJson>(app.get("${apiUrl}/player/episodes/${dub.player[0].id}/${dub.fundub.id}").text, listFundubEpisodes).filter{ it.episode == dataList[1].toIntOrNull() }.map { epd -> // Episode + Gson().fromJson>(app.get("${apiUrl}/player/episodes/${dub.player[0].id}/${dub.fundub.id}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).text, listFundubEpisodes).filter{ it.episode == dataList[1].toIntOrNull() }.map { epd -> // Episode M3u8Helper.generateM3u8( source = "${dub.fundub.name} (${dub.player[0].name})", - streamUrl = getM3U(app.get("${apiUrl}/player/episode/${epd.id}").parsedSafe()!!.videoUrl), + streamUrl = getM3U(app.get("${apiUrl}/player/episode/${epd.id}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).parsedSafe()!!.videoUrl), referer = "https://animeon.club" ).last().let(callback) } @@ -218,7 +239,10 @@ class AnimeONProvider : MainAPI() { fundubs.map { dub -> M3u8Helper.generateM3u8( source = "${dub.fundub.name} (${dub.player[0].name})", - streamUrl = getM3U(app.get("${apiUrl}/player/${dub.player[0].id}/${dub.fundub.id}").parsedSafe()!!.videoUrl), + streamUrl = getM3U(app.get("${apiUrl}/player/${dub.player[0].id}/${dub.fundub.id}", + headers = mapOf( + "Referer" to "https://animeon.club/", + )).parsedSafe()!!.videoUrl), referer = "https://animeon.club" ).last().let(callback) }