From 29ae7097d1a2c8ec3bf1d9b5af491240d7104961 Mon Sep 17 00:00:00 2001 From: Claudemirovsky <63046606+Claudemirovsky@users.noreply.github.com> Date: Sun, 3 Sep 2023 07:44:05 -0300 Subject: [PATCH] feat(animestream/tr): New source AsyaAnimeleri (#2131) --- .../asyaanimeleri/additional.gradle | 9 ++ .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3441 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1844 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4941 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 9429 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 14031 bytes .../asyaanimeleri/src/AsyaAnimeleri.kt | 148 ++++++++++++++++++ .../asyaanimeleri/src/AsyaAnimeleriFilters.kt | 54 +++++++ .../src/ShittyProtectionInterceptor.kt | 73 +++++++++ .../animestream/AnimeStreamGenerator.kt | 1 + 10 files changed, 285 insertions(+) create mode 100644 multisrc/overrides/animestream/asyaanimeleri/additional.gradle create mode 100644 multisrc/overrides/animestream/asyaanimeleri/res/mipmap-hdpi/ic_launcher.png create mode 100644 multisrc/overrides/animestream/asyaanimeleri/res/mipmap-mdpi/ic_launcher.png create mode 100644 multisrc/overrides/animestream/asyaanimeleri/res/mipmap-xhdpi/ic_launcher.png create mode 100644 multisrc/overrides/animestream/asyaanimeleri/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/animestream/asyaanimeleri/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/animestream/asyaanimeleri/src/AsyaAnimeleri.kt create mode 100644 multisrc/overrides/animestream/asyaanimeleri/src/AsyaAnimeleriFilters.kt create mode 100644 multisrc/overrides/animestream/asyaanimeleri/src/ShittyProtectionInterceptor.kt diff --git a/multisrc/overrides/animestream/asyaanimeleri/additional.gradle b/multisrc/overrides/animestream/asyaanimeleri/additional.gradle new file mode 100644 index 000000000..22dac6ec9 --- /dev/null +++ b/multisrc/overrides/animestream/asyaanimeleri/additional.gradle @@ -0,0 +1,9 @@ +dependencies { + implementation(project(":lib-vk-extractor")) + implementation(project(":lib-okru-extractor")) + implementation(project(":lib-sibnet-extractor")) + implementation(project(":lib-gdriveplayer-extractor")) + implementation(project(":lib-dood-extractor")) + implementation(project(":lib-mytv-extractor")) + // implementation(project(":lib-dailymotion-extractor")) +} diff --git a/multisrc/overrides/animestream/asyaanimeleri/res/mipmap-hdpi/ic_launcher.png b/multisrc/overrides/animestream/asyaanimeleri/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..254b424e5ad4d52eea6bf3b9ac609744e712686e GIT binary patch literal 3441 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 Tg~I0100000NkvXXu0mjfKb(}a literal 0 HcmV?d00001 diff --git a/multisrc/overrides/animestream/asyaanimeleri/res/mipmap-mdpi/ic_launcher.png b/multisrc/overrides/animestream/asyaanimeleri/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..079048d6ee11c38a724511b1f898ec662fdfcddb GIT binary patch literal 1844 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

(>j;rj>iWU`%qiywSIotBf5&{I^4tYQu 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 literal 0 HcmV?d00001 diff --git a/multisrc/overrides/animestream/asyaanimeleri/src/AsyaAnimeleri.kt b/multisrc/overrides/animestream/asyaanimeleri/src/AsyaAnimeleri.kt new file mode 100644 index 000000000..adb5816ee --- /dev/null +++ b/multisrc/overrides/animestream/asyaanimeleri/src/AsyaAnimeleri.kt @@ -0,0 +1,148 @@ +package eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri + +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.CountryFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.GenresFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.NetworkFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.OrderFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.StatusFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.StudioFilter +import eu.kanade.tachiyomi.animeextension.tr.asyaanimeleri.AsyaAnimeleriFilters.TypeFilter +import eu.kanade.tachiyomi.animesource.model.AnimeFilter +import eu.kanade.tachiyomi.animesource.model.AnimeFilterList +import eu.kanade.tachiyomi.animesource.model.SAnime +import eu.kanade.tachiyomi.animesource.model.Video +import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor +import eu.kanade.tachiyomi.lib.gdriveplayerextractor.GdrivePlayerExtractor +import eu.kanade.tachiyomi.lib.mytvextractor.MytvExtractor +import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor +import eu.kanade.tachiyomi.lib.sibnetextractor.SibnetExtractor +import eu.kanade.tachiyomi.lib.vkextractor.VkExtractor +import eu.kanade.tachiyomi.multisrc.animestream.AnimeStream +import eu.kanade.tachiyomi.multisrc.animestream.AnimeStreamFilters +import eu.kanade.tachiyomi.network.GET +import okhttp3.HttpUrl +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.Request +import org.jsoup.nodes.Element +import java.text.SimpleDateFormat +import java.util.Locale + +class AsyaAnimeleri : AnimeStream( + "tr", + "AsyaAnimeleri", + "https://asyaanimeleri.com", +) { + override val animeListUrl = "$baseUrl/series" + + override val dateFormatter by lazy { + SimpleDateFormat("MMMM dd, yyyy", Locale("tr")) + } + + override val client by lazy { + network.client.newBuilder() + .addInterceptor(ShittyProtectionInterceptor(network.client)) + .build() + } + + // =============================== Search =============================== + override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { + val params = AsyaAnimeleriFilters.getSearchParameters(filters) + return if (query.isNotEmpty()) { + GET("$baseUrl/page/$page/?s=$query") + } else { + val additional = params.run { listOf(genres, studios, countries, networks) } + .filter(String::isNotBlank) + .joinToString("&") + + val url = "$animeListUrl/?$additional".toHttpUrl().newBuilder() + .addQueryParameter("page", "$page") + .addIfNotBlank("status", params.status) + .addIfNotBlank("type", params.type) + .addIfNotBlank("order", params.order) + .build() + + GET(url.toString(), headers) + } + } + + // ============================== Filters =============================== + override val filtersSelector = "div.filter.dropdown > ul" + + override fun getFilterList(): AnimeFilterList { + return if (AnimeStreamFilters.filterInitialized()) { + AnimeFilterList( + GenresFilter("Tür"), + StudioFilter("Stüdyo"), + CountryFilter("Ülke"), + NetworkFilter("Ağ"), + AnimeFilter.Separator(), + StatusFilter("Durum"), + TypeFilter("Tip"), + OrderFilter("Sirala"), + ) + } else { + AnimeFilterList(AnimeFilter.Header(filtersMissingWarning)) + } + } + + // =========================== Anime Details ============================ + override val animeStatusText = "Durum" + + override fun parseStatus(statusString: String?): Int { + return when (statusString?.trim()?.lowercase()) { + "tamamlandı" -> SAnime.COMPLETED + "devam ediyor" -> SAnime.ONGOING + else -> SAnime.UNKNOWN + } + } + + // ============================== Episodes ============================== + override val episodePrefix = "Bölüm" + + // ============================ Video Links ============================= + override val prefQualityValues = arrayOf("1080p", "720p", "480p", "360p", "240p", "144p") + override val prefQualityEntries = prefQualityValues + + private val vkExtractor by lazy { VkExtractor(client, headers) } + private val okruExtractor by lazy { OkruExtractor(client) } + private val sibnetExtractor by lazy { SibnetExtractor(client) } + private val gdrivePlayerExtractor by lazy { GdrivePlayerExtractor(client) } + private val doodExtractor by lazy { DoodExtractor(client) } + private val mytvExtractor by lazy { MytvExtractor(client) } + // private val dailyExtractor by lazy { DailymotionExtractor(client, headers) } + + override fun getVideoList(url: String, name: String): List