diff --git a/app/src/main/java/com/lagradost/cloudstream3/extractors/StreamoUpload.kt b/app/src/main/java/com/lagradost/cloudstream3/extractors/StreamoUpload.kt index 76507da9..84ead6ee 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/extractors/StreamoUpload.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/extractors/StreamoUpload.kt @@ -22,24 +22,24 @@ open class StreamoUpload : ExtractorApi() { override suspend fun getUrl(url: String, referer: String?): List { val sources = mutableListOf() val response = app.get(url, referer = referer) - val scriptElements = response.document.select("script") - for (script in scriptElements) { - if (script.data().contains("eval(function(p,a,c,k,e,d)")) { - val data = getAndUnpack(script.data()).substringAfter("sources: [") - .substringBefore("],").replace("file", "\"file\"").trim() - tryParseJson>(data)?.let { - M3u8Helper.generateM3u8( - name, - it.map { file -> file.file }, - "$mainUrl/", - ).forEach { m3uData -> sources.add(m3uData) } + val scriptElements = response.document.select("script").map { script -> + if (script.data().contains("eval(function(p,a,c,k,e,d)")) { + val data = getAndUnpack(script.data()).substringAfter("sources: [").substringBefore("],").replace("file", "\"file\"").trim() + tryParseJson(data)?.let { + M3u8Helper.generateM3u8( + name, + it.file, + "$mainUrl/", + ).forEach { m3uData -> sources.add(m3uData) } + } } } + return sources } - return sources + + private data class File( + @JsonProperty("file") val file: String, + ) + + } - - private data class File( - @JsonProperty("file") val file: String, - ) -}