This commit is contained in:
Samantha 2024-03-05 23:51:56 +07:00
parent ed1ddbc9dd
commit 1a3714d1eb
6 changed files with 14 additions and 14 deletions

View file

@ -1,5 +1,5 @@
// use an integer for version numbers // use an integer for version numbers
version = 63 version = 64
cloudstream { cloudstream {

View file

@ -11,7 +11,7 @@ import java.net.URI
open class Movierulzhd : MainAPI() { open class Movierulzhd : MainAPI() {
override var mainUrl = "https://movierulzhd.cafe" override var mainUrl = "https://movierulzhd.club"
var directUrl = "" var directUrl = ""
override var name = "Movierulzhd" override var name = "Movierulzhd"
override val hasMainPage = true override val hasMainPage = true

View file

@ -1,7 +1,7 @@
import org.jetbrains.kotlin.konan.properties.Properties import org.jetbrains.kotlin.konan.properties.Properties
// use an integer for version numbers // use an integer for version numbers
version = 226 version = 227
android { android {
defaultConfig { defaultConfig {

View file

@ -857,7 +857,7 @@ object SoraExtractor : SoraStream() {
invokeAnimetosho(malId, season, episode, subtitleCallback, callback) invokeAnimetosho(malId, season, episode, subtitleCallback, callback)
}, },
{ {
invokeAniwatch(zoroIds, episode, subtitleCallback, callback) invokeHianime(zoroIds, episode, subtitleCallback, callback)
}, },
{ {
invokeAniwave(aniwaveId, episode, subtitleCallback, callback) invokeAniwave(aniwaveId, episode, subtitleCallback, callback)
@ -955,7 +955,7 @@ object SoraExtractor : SoraStream() {
} }
private suspend fun invokeAniwatch( private suspend fun invokeHianime(
animeIds: List<String?>? = null, animeIds: List<String?>? = null,
episode: Int? = null, episode: Int? = null,
subtitleCallback: (SubtitleFile) -> Unit, subtitleCallback: (SubtitleFile) -> Unit,
@ -966,17 +966,17 @@ object SoraExtractor : SoraStream() {
) )
animeIds?.apmap { id -> animeIds?.apmap { id ->
val episodeId = app.get( val episodeId = app.get(
"$aniwatchAPI/ajax/v2/episode/list/${id ?: return@apmap}", "$hianimeAPI/ajax/v2/episode/list/${id ?: return@apmap}",
headers = headers headers = headers
).parsedSafe<AniwatchResponses>()?.html?.let { ).parsedSafe<HianimeResponses>()?.html?.let {
Jsoup.parse(it) Jsoup.parse(it)
}?.select("div.ss-list a")?.find { it.attr("data-number") == "${episode ?: 1}" } }?.select("div.ss-list a")?.find { it.attr("data-number") == "${episode ?: 1}" }
?.attr("data-id") ?.attr("data-id")
val servers = app.get( val servers = app.get(
"$aniwatchAPI/ajax/v2/episode/servers?episodeId=${episodeId ?: return@apmap}", "$hianimeAPI/ajax/v2/episode/servers?episodeId=${episodeId ?: return@apmap}",
headers = headers headers = headers
).parsedSafe<AniwatchResponses>()?.html?.let { Jsoup.parse(it) } ).parsedSafe<HianimeResponses>()?.html?.let { Jsoup.parse(it) }
?.select("div.item.server-item")?.map { ?.select("div.item.server-item")?.map {
Triple( Triple(
it.text(), it.text(),
@ -987,15 +987,15 @@ object SoraExtractor : SoraStream() {
servers?.apmap servers@{ server -> servers?.apmap servers@{ server ->
val iframe = app.get( val iframe = app.get(
"$aniwatchAPI/ajax/v2/episode/sources?id=${server.second ?: return@servers}", "$hianimeAPI/ajax/v2/episode/sources?id=${server.second ?: return@servers}",
headers = headers headers = headers
).parsedSafe<AniwatchResponses>()?.link ).parsedSafe<HianimeResponses>()?.link
?: return@servers ?: return@servers
val audio = if (server.third == "sub") "Raw" else "English Dub" val audio = if (server.third == "sub") "Raw" else "English Dub"
loadCustomExtractor( loadCustomExtractor(
"${server.first} [$audio]", "${server.first} [$audio]",
iframe, iframe,
"$aniwatchAPI/", "$hianimeAPI/",
subtitleCallback, subtitleCallback,
callback, callback,
) )

View file

@ -274,7 +274,7 @@ data class MALSyncResponses(
@JsonProperty("Sites") val sites: MALSyncSites? = null, @JsonProperty("Sites") val sites: MALSyncSites? = null,
) )
data class AniwatchResponses( data class HianimeResponses(
@JsonProperty("html") val html: String? = null, @JsonProperty("html") val html: String? = null,
@JsonProperty("link") val link: String? = null, @JsonProperty("link") val link: String? = null,
) )

View file

@ -85,7 +85,7 @@ open class SoraStream : TmdbProvider() {
const val noverseAPI = "https://www.nollyverse.com" const val noverseAPI = "https://www.nollyverse.com"
const val filmxyAPI = "https://www.filmxy.vip" const val filmxyAPI = "https://www.filmxy.vip"
const val kimcartoonAPI = "https://kimcartoon.li" const val kimcartoonAPI = "https://kimcartoon.li"
const val aniwatchAPI = "https://aniwatch.to" const val hianimeAPI = "https://hianime.to"
const val aniwaveAPI = "https://aniwave.to" const val aniwaveAPI = "https://aniwave.to"
const val crunchyrollAPI = "https://beta-api.crunchyroll.com" const val crunchyrollAPI = "https://beta-api.crunchyroll.com"
const val kissKhAPI = "https://kisskh.co" const val kissKhAPI = "https://kisskh.co"