From 8b08d19606be90111356eb07e6ba9cddd75e16f3 Mon Sep 17 00:00:00 2001 From: Claudemirovsky <63046606+Claudemirovsky@users.noreply.github.com> Date: Tue, 10 Oct 2023 19:40:35 -0300 Subject: [PATCH] feat(src/tr): New source: HDFilmCehennemi (#2345) --- src/tr/hdfilmcehennemi/AndroidManifest.xml | 22 ++ src/tr/hdfilmcehennemi/build.gradle | 21 ++ .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 4356 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2415 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 6209 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 11845 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 17629 bytes .../tr/hdfilmcehennemi/HDFilmCehennemi.kt | 257 ++++++++++++++++++ .../HDFilmCehennemiUrlActivity.kt | 41 +++ .../extractors/RapidrameExtractor.kt | 28 ++ .../extractors/VidmolyExtractor.kt | 22 ++ 11 files changed, 391 insertions(+) create mode 100644 src/tr/hdfilmcehennemi/AndroidManifest.xml create mode 100644 src/tr/hdfilmcehennemi/build.gradle create mode 100644 src/tr/hdfilmcehennemi/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/tr/hdfilmcehennemi/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/tr/hdfilmcehennemi/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/tr/hdfilmcehennemi/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/tr/hdfilmcehennemi/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/HDFilmCehennemi.kt create mode 100644 src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/HDFilmCehennemiUrlActivity.kt create mode 100644 src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/extractors/RapidrameExtractor.kt create mode 100644 src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/extractors/VidmolyExtractor.kt diff --git a/src/tr/hdfilmcehennemi/AndroidManifest.xml b/src/tr/hdfilmcehennemi/AndroidManifest.xml new file mode 100644 index 0000000000..4f1a918e38 --- /dev/null +++ b/src/tr/hdfilmcehennemi/AndroidManifest.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/src/tr/hdfilmcehennemi/build.gradle b/src/tr/hdfilmcehennemi/build.gradle new file mode 100644 index 0000000000..8659b39826 --- /dev/null +++ b/src/tr/hdfilmcehennemi/build.gradle @@ -0,0 +1,21 @@ +plugins { + alias(libs.plugins.android.application) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.serialization) +} + +ext { + extName = 'HDFilmCehennemi' + pkgNameSuffix = 'tr.hdfilmcehennemi' + extClass = '.HDFilmCehennemi' + extVersionCode = 1 + libVersion = '13' + containsNsfw = true +} + +dependencies { + implementation(project(":lib-unpacker")) + implementation(project(":lib-playlist-utils")) +} + +apply from: "$rootDir/common.gradle" diff --git a/src/tr/hdfilmcehennemi/res/mipmap-hdpi/ic_launcher.png b/src/tr/hdfilmcehennemi/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1299bbfc447ea3cacf179037addc0f35479f157d GIT binary patch literal 4356 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 literal 0 HcmV?d00001 diff --git a/src/tr/hdfilmcehennemi/res/mipmap-xhdpi/ic_launcher.png b/src/tr/hdfilmcehennemi/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..73bf48abc681593d83a3f0f5f6db6d748f527285 GIT binary patch literal 6209 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 literal 0 HcmV?d00001 diff --git a/src/tr/hdfilmcehennemi/res/mipmap-xxhdpi/ic_launcher.png b/src/tr/hdfilmcehennemi/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a51f341ef3b681d4b3b1c7bf497dae8266e1f3c2 GIT binary patch literal 11845 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 literal 0 HcmV?d00001 diff --git a/src/tr/hdfilmcehennemi/res/mipmap-xxxhdpi/ic_launcher.png b/src/tr/hdfilmcehennemi/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..80bce2581388cf666bc8823e7c1d4804a49c53a0 GIT binary patch literal 17629 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%0D5x0=TDFT)E4?X9b^ukF;b*_1^iCE&cj;IXTZdl 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
  • ItsK# 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 Q7ytkO07*qoM6N<$f?Dct-v9sr literal 0 HcmV?d00001 diff --git a/src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/HDFilmCehennemi.kt b/src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/HDFilmCehennemi.kt new file mode 100644 index 0000000000..36b4db4993 --- /dev/null +++ b/src/tr/hdfilmcehennemi/src/eu/kanade/tachiyomi/animeextension/tr/hdfilmcehennemi/HDFilmCehennemi.kt @@ -0,0 +1,257 @@ +package eu.kanade.tachiyomi.animeextension.tr.hdfilmcehennemi + +import android.app.Application +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animeextension.tr.hdfilmcehennemi.extractors.RapidrameExtractor +import eu.kanade.tachiyomi.animeextension.tr.hdfilmcehennemi.extractors.VidmolyExtractor +import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource +import eu.kanade.tachiyomi.animesource.model.AnimeFilterList +import eu.kanade.tachiyomi.animesource.model.AnimesPage +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.network.GET +import eu.kanade.tachiyomi.network.POST +import eu.kanade.tachiyomi.network.asObservableSuccess +import eu.kanade.tachiyomi.util.asJsoup +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.async +import kotlinx.coroutines.awaitAll +import kotlinx.coroutines.runBlocking +import kotlinx.serialization.Serializable +import kotlinx.serialization.decodeFromString +import kotlinx.serialization.json.Json +import okhttp3.FormBody +import okhttp3.Request +import okhttp3.Response +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import rx.Observable +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get +import uy.kohesive.injekt.injectLazy + +class HDFilmCehennemi : ConfigurableAnimeSource, ParsedAnimeHttpSource() { + + override val name = "HDFilmCehennemi" + + override val baseUrl = "https://www.hdfilmcehennemi.life" + + override val lang = "tr" + + override val supportsLatest = true + + override val client = network.cloudflareClient + + override fun headersBuilder() = super.headersBuilder() + .add("Referer", "$baseUrl/") + .add("Origin", baseUrl) + + private val json: Json by injectLazy() + + private val preferences by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + + // ============================== Popular =============================== + override fun popularAnimeRequest(page: Int) = GET("$baseUrl/en-cok-begenilen-filmleri-izle/page/$page/") + + override fun popularAnimeSelector() = "div.row div.poster > a" + + override fun popularAnimeFromElement(element: Element) = SAnime.create().apply { + setUrlWithoutDomain(element.attr("href")) + title = element.selectFirst("h2.title")!!.text() + thumbnail_url = element.selectFirst("img")?.absUrl("data-src") + } + + override fun popularAnimeNextPageSelector() = "ul.pagination > li > a[rel=next]" + + // =============================== Latest =============================== + override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/page/$page/") + + override fun latestUpdatesSelector() = popularAnimeSelector() + + override fun latestUpdatesFromElement(element: Element) = popularAnimeFromElement(element) + + override fun latestUpdatesNextPageSelector() = popularAnimeNextPageSelector() + + // =============================== Search =============================== + override fun fetchSearchAnime(page: Int, query: String, filters: AnimeFilterList): Observable { + return if (query.startsWith(PREFIX_SEARCH)) { // URL intent handler + val id = query.removePrefix(PREFIX_SEARCH) + client.newCall(GET("$baseUrl/$id")) + .asObservableSuccess() + .map(::searchAnimeByIdParse) + } else { + super.fetchSearchAnime(page, query, filters) + } + } + + private fun searchAnimeByIdParse(response: Response): AnimesPage { + val details = animeDetailsParse(response.use { it.asJsoup() }) + return AnimesPage(listOf(details), false) + } + + override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { + val headers = headersBuilder() + .add("Referer", "$baseUrl/") + .add("Origin", baseUrl) + .add("X-Requested-With", "XMLHttpRequest") + .build() + + val body = FormBody.Builder().add("query", query).build() + + return POST("$baseUrl/search/", headers, body) + } + + @Serializable + data class SearchResponse(val result: List) + + @Serializable + data class MovieDto(val title: String, val poster: String, val slug: String) + + override fun searchAnimeParse(response: Response): AnimesPage { + val data = response.parseAs() + val movies = data.result.map { + SAnime.create().apply { + title = it.title + thumbnail_url = "$baseUrl/uploads/poster/" + it.poster + url = "/" + it.slug + } + } + + return AnimesPage(movies, false) + } + + override fun searchAnimeSelector(): String { + throw UnsupportedOperationException("Not used.") + } + + override fun searchAnimeFromElement(element: Element): SAnime { + throw UnsupportedOperationException("Not used.") + } + + override fun searchAnimeNextPageSelector(): String? { + throw UnsupportedOperationException("Not used.") + } + + // =========================== Anime Details ============================ + override fun animeDetailsParse(document: Document) = SAnime.create().apply { + status = SAnime.COMPLETED + + val div = document.selectFirst("div.card-body > div.row")!! + + div.selectFirst("img")!!.run { + thumbnail_url = absUrl("src") + title = attr("alt") + } + + genre = div.select("div > a[href*=tur/]").eachText().joinToString().takeIf(String::isNotEmpty) + artist = div.select("a.chip[href*=oyuncu/]").eachText().joinToString().takeIf(String::isNotEmpty) + + description = div.selectFirst("article > p")?.text() + } + + // ============================== Episodes ============================== + override fun fetchEpisodeList(anime: SAnime) = Observable.just( + listOf( + SEpisode.create().apply { + url = anime.url + name = "Movie" + }, + ), + ) + + override fun episodeListSelector(): String { + throw UnsupportedOperationException("Not used.") + } + + override fun episodeFromElement(element: Element): SEpisode { + throw UnsupportedOperationException("Not used.") + } + + // ============================ Video Links ============================= + private val vidmolyExtractor by lazy { VidmolyExtractor(client, headers) } + private val rapidrameExtractor by lazy { RapidrameExtractor(client, headers) } + + override fun videoListParse(response: Response): List