This commit is contained in:
jack 2023-11-13 05:41:54 +07:00
parent cfe34bb989
commit c30706d173
4 changed files with 4 additions and 151 deletions

View file

@ -1311,10 +1311,8 @@ object SoraExtractor : SoraStream() {
val script = if (scriptData.size == 1) { val script = if (scriptData.size == 1) {
scriptData.firstOrNull() scriptData.firstOrNull()
} else { } else {
scriptData.find { it.first.equals("$title ($year)", true) } ?: scriptData.find { scriptData.find {
it.first.contains( it.first.contains(Regex("(?i)$title \\($year\\s?\\)")) && if(season!=null) it.third?.contains("-tvshow-") == true else it.third?.contains("-movie-") == true
"$title", true
) && it.second == "$year"
} }
} }
@ -1945,46 +1943,6 @@ object SoraExtractor : SoraStream() {
} }
suspend fun invokeMovies123(
title: String? = null,
year: Int? = null,
season: Int? = null,
episode: Int? = null,
callback: (ExtractorLink) -> Unit,
) {
invokeGpress(
title,
year,
season,
episode,
callback,
movies123API,
"Movies123",
"mouCgDQMxDwt",
"moFHVogrVLMH"
)
}
suspend fun invokeGomovies(
title: String? = null,
year: Int? = null,
season: Int? = null,
episode: Int? = null,
callback: (ExtractorLink) -> Unit,
) {
invokeGpress(
title,
year,
season,
episode,
callback,
gomoviesAPI,
"Gomovies",
"_smQamBQsETb",
"_sBWcqbTBMaT"
)
}
private suspend fun invokeGpress( private suspend fun invokeGpress(
title: String? = null, title: String? = null,
year: Int? = null, year: Int? = null,
@ -2353,7 +2311,7 @@ object SoraExtractor : SoraStream() {
episode: Int? = null, episode: Int? = null,
callback: (ExtractorLink) -> Unit, callback: (ExtractorLink) -> Unit,
) { ) {
invokeHindi(momentAPI, "https://hdmovies4u.green", imdbId, season, episode, callback) invokeHindi(momentAPI, "https://hdmovies4u.band", imdbId, season, episode, callback)
} }
private suspend fun invokeHindi( private suspend fun invokeHindi(
@ -2461,49 +2419,6 @@ object SoraExtractor : SoraStream() {
} }
suspend fun invokeJump1(
tmdbId: Int? = null,
tvdbId: Int? = null,
title: String? = null,
year: Int? = null,
season: Int? = null,
episode: Int? = null,
callback: (ExtractorLink) -> Unit,
) {
val referer = "https://jump1.net/"
val res = if (season == null) {
val body =
"""{"filters":[{"type":"slug","args":{"slugs":["${title.createSlug()}-$year"]}}],"sort":"addedRecent","skip":0,"limit":100}""".toRequestBody(
RequestBodyTypes.JSON.toMediaTypeOrNull()
)
app.post("$jump1API/api/movies", requestBody = body, referer = referer)
} else {
app.get("$jump1API/api/shows/$tvdbId/seasons", referer = referer)
}.text
val source = if (season == null) {
tryParseJson<Jump1Movies>(res)?.movies?.find { it.id == tmdbId }?.videoId
} else {
val jumpSeason =
tryParseJson<ArrayList<Jump1Season>>(res)?.find { it.seasonNumber == season }?.id
val seasonRes = app.get(
"$jump1API/api/shows/seasons/${jumpSeason ?: return}/episodes", referer = referer
)
tryParseJson<ArrayList<Jump1Episodes>>(seasonRes.text)?.find { it.episodeNumber == episode }?.videoId
}
callback.invoke(
ExtractorLink(
"Jump1",
"Jump1",
"$jump1API/hls/${source ?: return}/master.m3u8?ts=${unixTimeMS}",
referer,
Qualities.P1080.value,
true
)
)
}
suspend fun invokeSFMovies( suspend fun invokeSFMovies(
tmdbId: Int? = null, tmdbId: Int? = null,
title: String? = null, title: String? = null,

View file

@ -72,21 +72,6 @@ data class KisskhResults(
@JsonProperty("title") val title: String?, @JsonProperty("title") val title: String?,
) )
data class Jump1Episodes(
@JsonProperty("id") val id: Any? = null,
@JsonProperty("episodeNumber") val episodeNumber: Int? = null,
@JsonProperty("videoId") val videoId: String? = null,
)
data class Jump1Season(
@JsonProperty("seasonNumber") val seasonNumber: Int? = null,
@JsonProperty("id") val id: String? = null,
)
data class Jump1Movies(
@JsonProperty("movies") val movies: ArrayList<Jump1Episodes>? = arrayListOf(),
)
data class DriveBotLink( data class DriveBotLink(
@JsonProperty("url") val url: String? = null, @JsonProperty("url") val url: String? = null,
) )

View file

@ -34,12 +34,9 @@ import com.hexated.SoraExtractor.invokeSmashyStream
import com.hexated.SoraExtractor.invokeDumpStream import com.hexated.SoraExtractor.invokeDumpStream
import com.hexated.SoraExtractor.invokeEmovies import com.hexated.SoraExtractor.invokeEmovies
import com.hexated.SoraExtractor.invokeHdmovies4u import com.hexated.SoraExtractor.invokeHdmovies4u
import com.hexated.SoraExtractor.invokeJump1
import com.hexated.SoraExtractor.invokeMoment import com.hexated.SoraExtractor.invokeMoment
import com.hexated.SoraExtractor.invokeMultimovies import com.hexated.SoraExtractor.invokeMultimovies
import com.hexated.SoraExtractor.invokeNetmovies import com.hexated.SoraExtractor.invokeNetmovies
import com.hexated.SoraExtractor.invokeGomovies
import com.hexated.SoraExtractor.invokeMovies123
import com.hexated.SoraExtractor.invokeSFMovies import com.hexated.SoraExtractor.invokeSFMovies
import com.hexated.SoraExtractor.invokeShowflix import com.hexated.SoraExtractor.invokeShowflix
import com.hexated.SoraExtractor.invokeTvMovies import com.hexated.SoraExtractor.invokeTvMovies
@ -111,17 +108,14 @@ open class SoraStream : TmdbProvider() {
const val emoviesAPI = "https://emovies.si" const val emoviesAPI = "https://emovies.si"
const val multimoviesAPI = "https://multimovies.info" const val multimoviesAPI = "https://multimovies.info"
const val netmoviesAPI = "https://netmovies.to" const val netmoviesAPI = "https://netmovies.to"
const val momentAPI = "https://moment-explanation-i-244.site" const val momentAPI = "https://izzillent-dickstonyx-i-262.site"
const val doomoviesAPI = "https://doomovies.net" const val doomoviesAPI = "https://doomovies.net"
const val vidsrctoAPI = "https://vidsrc.to" const val vidsrctoAPI = "https://vidsrc.to"
const val dramadayAPI = "https://dramaday.me" const val dramadayAPI = "https://dramaday.me"
const val animetoshoAPI = "https://animetosho.org" const val animetoshoAPI = "https://animetosho.org"
const val movies123API = "https://new-movies123.link"
const val jump1API = "https://ca.jump1.net"
const val vegaMoviesAPI = "https://vegamovies.care" const val vegaMoviesAPI = "https://vegamovies.care"
const val hdmovies4uAPI = "https://hdmovies4u.name" const val hdmovies4uAPI = "https://hdmovies4u.name"
const val watchflxAPI = "https://watchflx.tv" const val watchflxAPI = "https://watchflx.tv"
const val gomoviesAPI = "https://gomovies-online.cam"
const val dotmoviesAPI = "https://dotmovies.tattoo" const val dotmoviesAPI = "https://dotmovies.tattoo"
const val blackvidAPI = "https://prod.api.blackvid.space" const val blackvidAPI = "https://prod.api.blackvid.space"
const val showflixAPI = "https://showflix.online" const val showflixAPI = "https://showflix.online"
@ -565,24 +559,6 @@ open class SoraStream : TmdbProvider() {
callback callback
) )
}, },
{
if (!res.isAnime) invokeGomovies(
res.title,
res.year,
res.season,
res.episode,
callback
)
},
{
if (!res.isAnime) invokeMovies123(
res.title,
res.year,
res.season,
res.episode,
callback
)
},
{ {
invokeWatchOnline( invokeWatchOnline(
res.imdbId, res.imdbId,
@ -676,17 +652,6 @@ open class SoraStream : TmdbProvider() {
{ {
if (!res.isAnime) invoke2embed(res.imdbId, res.season, res.episode, subtitleCallback, callback) if (!res.isAnime) invoke2embed(res.imdbId, res.season, res.episode, subtitleCallback, callback)
}, },
{
if (!res.isAnime) invokeJump1(
res.id,
res.tvdbId,
res.title,
res.year,
res.season,
res.episode,
callback
)
},
{ {
if (!res.isAnime) invokeHdmovies4u( if (!res.isAnime) invokeHdmovies4u(
res.title, res.title,

View file

@ -22,12 +22,9 @@ import com.hexated.SoraExtractor.invokeRidomovies
import com.hexated.SoraExtractor.invokeSmashyStream import com.hexated.SoraExtractor.invokeSmashyStream
import com.hexated.SoraExtractor.invokeDumpStream import com.hexated.SoraExtractor.invokeDumpStream
import com.hexated.SoraExtractor.invokeEmovies import com.hexated.SoraExtractor.invokeEmovies
import com.hexated.SoraExtractor.invokeJump1
import com.hexated.SoraExtractor.invokeMoment import com.hexated.SoraExtractor.invokeMoment
import com.hexated.SoraExtractor.invokeMultimovies import com.hexated.SoraExtractor.invokeMultimovies
import com.hexated.SoraExtractor.invokeNetmovies import com.hexated.SoraExtractor.invokeNetmovies
import com.hexated.SoraExtractor.invokeGomovies
import com.hexated.SoraExtractor.invokeMovies123
import com.hexated.SoraExtractor.invokeSFMovies import com.hexated.SoraExtractor.invokeSFMovies
import com.hexated.SoraExtractor.invokeShowflix import com.hexated.SoraExtractor.invokeShowflix
import com.hexated.SoraExtractor.invokeVidSrc import com.hexated.SoraExtractor.invokeVidSrc
@ -53,9 +50,6 @@ class SoraStreamLite : SoraStream() {
val res = AppUtils.parseJson<LinkData>(data) val res = AppUtils.parseJson<LinkData>(data)
argamap( argamap(
{
if(!res.isAnime) invokeJump1(res.id,res.tvdbId,res.title,res.year,res.season,res.episode,callback)
},
{ {
if (!res.isAnime) invokeBlackvid( if (!res.isAnime) invokeBlackvid(
res.id, res.id,
@ -203,12 +197,6 @@ class SoraStreamLite : SoraStream() {
{ {
if (!res.isAnime) invokeFlixon(res.id, res.imdbId, res.season, res.episode, callback) if (!res.isAnime) invokeFlixon(res.id, res.imdbId, res.season, res.episode, callback)
}, },
{
if (!res.isAnime) invokeGomovies(res.title, res.year, res.season, res.episode, callback)
},
{
if (!res.isAnime) invokeMovies123(res.title, res.year, res.season, res.episode, callback)
},
{ {
invokeWatchOnline( invokeWatchOnline(
res.imdbId, res.imdbId,