mirror of
https://github.com/hexated/cloudstream-extensions-hexated.git
synced 2024-08-15 00:03:22 +00:00
Dramaid: updated domain
This commit is contained in:
parent
fbae10d9e3
commit
fdd244ed88
6 changed files with 28 additions and 12 deletions
|
@ -1,5 +1,5 @@
|
||||||
// use an integer for version numbers
|
// use an integer for version numbers
|
||||||
version = 4
|
version = 5
|
||||||
|
|
||||||
|
|
||||||
cloudstream {
|
cloudstream {
|
||||||
|
|
|
@ -11,7 +11,7 @@ import org.jsoup.Jsoup
|
||||||
import org.jsoup.nodes.Element
|
import org.jsoup.nodes.Element
|
||||||
|
|
||||||
class DramaidProvider : MainAPI() {
|
class DramaidProvider : MainAPI() {
|
||||||
override var mainUrl = "https://dramaid.cloud"
|
override var mainUrl = "hhttps://dramaid.best"
|
||||||
override var name = "DramaId"
|
override var name = "DramaId"
|
||||||
override val hasQuickSearch = false
|
override val hasQuickSearch = false
|
||||||
override val hasMainPage = true
|
override val hasMainPage = true
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// use an integer for version numbers
|
// use an integer for version numbers
|
||||||
version = 10
|
version = 9
|
||||||
|
|
||||||
|
|
||||||
cloudstream {
|
cloudstream {
|
||||||
|
|
|
@ -142,7 +142,12 @@ open class Kickassanime : MainAPI() {
|
||||||
}
|
}
|
||||||
} ?: if (episodes.size == 1) "movie" else "tv"
|
} ?: if (episodes.size == 1) "movie" else "tv"
|
||||||
|
|
||||||
val (malId, anilistId, image, cover) = getTracker(trackerTitle, title.getTrackerTitle(), type, year)
|
val (malId, anilistId, image, cover) = getTracker(
|
||||||
|
trackerTitle,
|
||||||
|
title.getTrackerTitle(),
|
||||||
|
type,
|
||||||
|
year
|
||||||
|
)
|
||||||
|
|
||||||
return newAnimeLoadResponse(title, url, getType(type)) {
|
return newAnimeLoadResponse(title, url, getType(type)) {
|
||||||
engName = title
|
engName = title
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// use an integer for version numbers
|
// use an integer for version numbers
|
||||||
version = 87
|
version = 86
|
||||||
|
|
||||||
|
|
||||||
cloudstream {
|
cloudstream {
|
||||||
|
|
|
@ -717,6 +717,7 @@ object SoraExtractor : SoraStream() {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
suspend fun invokeSoraStream(
|
suspend fun invokeSoraStream(
|
||||||
title: String? = null,
|
title: String? = null,
|
||||||
year: Int? = null,
|
year: Int? = null,
|
||||||
|
@ -730,10 +731,11 @@ object SoraExtractor : SoraStream() {
|
||||||
"versioncode" to "32",
|
"versioncode" to "32",
|
||||||
"clienttype" to "android_tem3",
|
"clienttype" to "android_tem3",
|
||||||
)
|
)
|
||||||
val vipAPI = base64DecodeAPI("cA==YXA=cy8=Y20=di8=LnQ=b2s=a2w=bG8=aS4=YXA=ZS0=aWw=b2I=LW0=Z2E=Ly8=czo=dHA=aHQ=")
|
val vipAPI =
|
||||||
|
base64DecodeAPI("cA==YXA=cy8=Y20=di8=LnQ=b2s=a2w=bG8=aS4=YXA=ZS0=aWw=b2I=LW0=Z2E=Ly8=czo=dHA=aHQ=")
|
||||||
val searchUrl = base64DecodeAPI("b20=LmM=b2s=a2w=bG8=Ly8=czo=dHA=aHQ=")
|
val searchUrl = base64DecodeAPI("b20=LmM=b2s=a2w=bG8=Ly8=czo=dHA=aHQ=")
|
||||||
|
|
||||||
val doc = app.get("$searchUrl/search?keyword=$title",).document
|
val doc = app.get("$searchUrl/search?keyword=$title").document
|
||||||
|
|
||||||
val scriptData = doc.select("div.search-list div.search-video-card").map {
|
val scriptData = doc.select("div.search-list div.search-video-card").map {
|
||||||
Triple(
|
Triple(
|
||||||
|
@ -1215,7 +1217,8 @@ object SoraExtractor : SoraStream() {
|
||||||
if (season == null) {
|
if (season == null) {
|
||||||
it.text() to it.nextElementSibling()?.select("a")?.attr("href")
|
it.text() to it.nextElementSibling()?.select("a")?.attr("href")
|
||||||
} else {
|
} else {
|
||||||
it.text() to it.nextElementSibling()?.select("a:matches((Episode $episode)|($epsTitle))")
|
it.text() to it.nextElementSibling()
|
||||||
|
?.select("a:matches((Episode $episode)|($epsTitle))")
|
||||||
?.attr("href")
|
?.attr("href")
|
||||||
}
|
}
|
||||||
}.filter { it.second?.contains(Regex("(https:)|(http:)")) == true }
|
}.filter { it.second?.contains(Regex("(https:)|(http:)")) == true }
|
||||||
|
@ -1918,7 +1921,8 @@ object SoraExtractor : SoraStream() {
|
||||||
).parsedSafe<Smashy1Source>() ?: return
|
).parsedSafe<Smashy1Source>() ?: return
|
||||||
|
|
||||||
val videoUrl = base64Decode(source.file ?: return)
|
val videoUrl = base64Decode(source.file ?: return)
|
||||||
val quality = Regex("(\\d{3,4})[Pp]").find(videoUrl)?.groupValues?.getOrNull(1)?.toIntOrNull()
|
val quality =
|
||||||
|
Regex("(\\d{3,4})[Pp]").find(videoUrl)?.groupValues?.getOrNull(1)?.toIntOrNull()
|
||||||
?: Qualities.P720.value
|
?: Qualities.P720.value
|
||||||
callback.invoke(
|
callback.invoke(
|
||||||
ExtractorLink(
|
ExtractorLink(
|
||||||
|
@ -2256,7 +2260,14 @@ object SoraExtractor : SoraStream() {
|
||||||
} else {
|
} else {
|
||||||
app.post("${apiUrl}search", requestBody = body).text
|
app.post("${apiUrl}search", requestBody = body).text
|
||||||
}
|
}
|
||||||
val media = if(api in premiumIndex) searchIndex(title, season, episode, year, search, false) else searchIndex(title, season, episode, year, search)
|
val media = if (api in premiumIndex) searchIndex(
|
||||||
|
title,
|
||||||
|
season,
|
||||||
|
episode,
|
||||||
|
year,
|
||||||
|
search,
|
||||||
|
false
|
||||||
|
) else searchIndex(title, season, episode, year, search)
|
||||||
media?.apmap { file ->
|
media?.apmap { file ->
|
||||||
val pathBody = """{"id":"${file.id ?: return@apmap null}"}""".toRequestBody(
|
val pathBody = """{"id":"${file.id ?: return@apmap null}"}""".toRequestBody(
|
||||||
RequestBodyTypes.JSON.toMediaTypeOrNull()
|
RequestBodyTypes.JSON.toMediaTypeOrNull()
|
||||||
|
|
Loading…
Reference in a new issue