mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
up
This commit is contained in:
parent
52d3c5068a
commit
786958e7d3
1 changed files with 17 additions and 12 deletions
|
@ -4,34 +4,38 @@ import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
|
|||
import com.lagradost.cloudstream3.utils.ExtractorApi
|
||||
import com.lagradost.cloudstream3.utils.ExtractorLink
|
||||
import com.lagradost.cloudstream3.utils.M3u8Helper
|
||||
import org.jsoup.select.Elements
|
||||
import java.util.regex.Matcher
|
||||
import java.util.regex.Pattern
|
||||
|
||||
class StreamoUpload1 : StreamoUpload() {
|
||||
class StreamoUpload : StreamoUpload() {
|
||||
override val mainUrl = "https://streamoupload.xyz"
|
||||
}
|
||||
|
||||
open class StreamoUpload : ExtractorApi() {
|
||||
override val name = "StreamoUpload"
|
||||
open class StreamoUpload : ExtractorApi(name = "StreamoUpload") {
|
||||
override val mainUrl = "https://streamoupload.xyz"
|
||||
override val requiresReferer = true
|
||||
|
||||
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink> {
|
||||
val sources = mutableListOf<ExtractorLink>()
|
||||
val response = app.get(url, referer = referer)
|
||||
val scriptElements: Elements = response.document.select("script")
|
||||
val scriptPattern: Pattern = Pattern.compile("jwplayer\\(\"vplayer\"\\)\\.setup\\((.*?)\\);", Pattern.DOTALL)
|
||||
val filePattern: Pattern = Pattern.compile("\"file\"\\s*:\\s*\"(.*?)\"")
|
||||
|
||||
val scriptMatcher: Matcher = scriptPattern.matcher(response.body)
|
||||
for (script in scriptElements) {
|
||||
if (script.data().contains("jwplayer(\"vplayer\").setup(")) {
|
||||
val dataMatcher: Matcher = scriptPattern.matcher(script.data())
|
||||
if (dataMatcher.find()) {
|
||||
val data = dataMatcher.group(1)
|
||||
val fileMatcher: Matcher = filePattern.matcher(data)
|
||||
|
||||
while (scriptMatcher.find()) {
|
||||
val scriptData = scriptMatcher.group(1)
|
||||
val fileMatcher: Matcher = filePattern.matcher(scriptData)
|
||||
|
||||
while (fileMatcher.find()) {
|
||||
val fileUrl = fileMatcher.group(1)
|
||||
val videoUrl = "$mainUrl$fileUrl"
|
||||
sources.add(ExtractorLink(videoUrl))
|
||||
while (fileMatcher.find()) {
|
||||
val fileUrl = fileMatcher.group(1)
|
||||
val videoUrl = "$mainUrl$fileUrl"
|
||||
sources.add(ExtractorLink(videoUrl))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -42,3 +46,4 @@ open class StreamoUpload : ExtractorApi() {
|
|||
@JsonProperty("file") val file: String,
|
||||
)
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue