mirror of
https://github.com/hexated/cloudstream-extensions-hexated.git
synced 2024-08-15 00:03:22 +00:00
parent
19b32029e6
commit
be6b026fe0
2 changed files with 38 additions and 32 deletions
|
@ -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 = 197
|
version = 198
|
||||||
|
|
||||||
android {
|
android {
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|
|
@ -451,7 +451,7 @@ object SoraExtractor : SoraStream() {
|
||||||
sourcesData?.get("movie")?.get("movie")
|
sourcesData?.get("movie")?.get("movie")
|
||||||
} else {
|
} else {
|
||||||
sourcesData?.get("s$seasonSlug")?.get("e$episodeSlug")
|
sourcesData?.get("s$seasonSlug")?.get("e$episodeSlug")
|
||||||
}
|
} ?: return
|
||||||
val subSources = if (season == null) {
|
val subSources = if (season == null) {
|
||||||
subSourcesData?.get("movie")?.get("movie")
|
subSourcesData?.get("movie")?.get("movie")
|
||||||
} else {
|
} else {
|
||||||
|
@ -464,10 +464,15 @@ object SoraExtractor : SoraStream() {
|
||||||
Regex("var\\suserNonce.*?[\"|'](\\S+?)[\"|'];").find(scriptUser)?.groupValues?.get(1)
|
Regex("var\\suserNonce.*?[\"|'](\\S+?)[\"|'];").find(scriptUser)?.groupValues?.get(1)
|
||||||
val userId =
|
val userId =
|
||||||
Regex("var\\suser_id.*?[\"|'](\\S+?)[\"|'];").find(scriptUser)?.groupValues?.get(1)
|
Regex("var\\suser_id.*?[\"|'](\\S+?)[\"|'];").find(scriptUser)?.groupValues?.get(1)
|
||||||
val linkIDs = sources?.joinToString("") {
|
|
||||||
"&linkIDs%5B%5D=$it"
|
|
||||||
}?.replace("\"", "")
|
|
||||||
|
|
||||||
|
val listSources = sources.withIndex()
|
||||||
|
.groupBy { it.index / 2 }
|
||||||
|
.map { entry -> entry.value.map { it.value } }
|
||||||
|
|
||||||
|
listSources.apmap { src ->
|
||||||
|
val linkIDs = src.joinToString("") {
|
||||||
|
"&linkIDs%5B%5D=$it"
|
||||||
|
}.replace("\"", "")
|
||||||
val json = app.post(
|
val json = app.post(
|
||||||
"$filmxyAPI/wp-admin/admin-ajax.php",
|
"$filmxyAPI/wp-admin/admin-ajax.php",
|
||||||
requestBody = "action=get_vid_links$linkIDs&user_id=$userId&nonce=$userNonce".toRequestBody(),
|
requestBody = "action=get_vid_links$linkIDs&user_id=$userId&nonce=$userNonce".toRequestBody(),
|
||||||
|
@ -482,7 +487,7 @@ object SoraExtractor : SoraStream() {
|
||||||
cookies = filmxyCookies
|
cookies = filmxyCookies
|
||||||
).text.let { tryParseJson<HashMap<String, String>>(it) }
|
).text.let { tryParseJson<HashMap<String, String>>(it) }
|
||||||
|
|
||||||
sources?.map { source ->
|
src.map { source ->
|
||||||
val link = json?.get(source)
|
val link = json?.get(source)
|
||||||
val quality = sourcesDetail?.get(source)?.get("resolution")
|
val quality = sourcesDetail?.get(source)?.get("resolution")
|
||||||
val server = sourcesDetail?.get(source)?.get("server")
|
val server = sourcesDetail?.get(source)?.get("server")
|
||||||
|
@ -498,6 +503,7 @@ object SoraExtractor : SoraStream() {
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
subSources?.mapKeys { sub ->
|
subSources?.mapKeys { sub ->
|
||||||
subtitleCallback.invoke(
|
subtitleCallback.invoke(
|
||||||
|
@ -2463,7 +2469,7 @@ object SoraExtractor : SoraStream() {
|
||||||
ExtractorLink(
|
ExtractorLink(
|
||||||
"SFMovies",
|
"SFMovies",
|
||||||
"SFMovies",
|
"SFMovies",
|
||||||
fixUrl(video, base64DecodeAPI("aQ==YXA=dGE=ZGE=c3Q=cmU=dC8=bmU=cy4=b3c=bmQ=d2k=ZS4=b3I=LmM=b2I=Ymw=aS4=YXA=dGE=ZGE=c3Q=cmU=Ly8=czo=dHA=aHQ=")),
|
fixUrl(video, base64DecodeAPI("cw==bmU=Ym8=Y2s=YmE=dC8=bmU=cy4=b3c=bmQ=d2k=ZS4=b3I=LmM=b2I=Ymw=cy4=bmU=Ym8=Y2s=YmE=Ly8=czo=dHA=aHQ=")),
|
||||||
"",
|
"",
|
||||||
Qualities.P1080.value,
|
Qualities.P1080.value,
|
||||||
INFER_TYPE
|
INFER_TYPE
|
||||||
|
|
Loading…
Reference in a new issue