From 0de8c35e8a2b6cdf94584cb9741e8d009c065fd9 Mon Sep 17 00:00:00 2001 From: Luna712 <142361265+Luna712@users.noreply.github.com> Date: Sun, 28 Jun 2026 19:58:02 -0600 Subject: [PATCH 1/4] EmturbovidExtractor: replace selectXpath This will be necessary when we finally fully migrate to ksoup, which currently doesn't have selectXpath, but for our usages that is not necessary. This way is also more consistent with how we do it everywhere else. --- .../extractors/EmturbovidExtractor.kt | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt index f4a5cdb2b18..50f203546a9 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt @@ -13,30 +13,27 @@ open class EmturbovidExtractor : ExtractorApi() { override val requiresReferer = false override suspend fun getUrl(url: String, referer: String?): List? { - val response = app.get( - url, referer = referer ?: "$mainUrl/" - ) - val playerScript = - response.document.selectXpath("//script[contains(text(),'var urlPlay')]") - .html() + val response = app.get(url, referer = referer ?: "$mainUrl/") + val playerScript = response.document + .select("script:contains(var urlPlay)") + .html() val sources = mutableListOf() if (playerScript.isNotBlank()) { - val m3u8Url = - playerScript.substringAfter("var urlPlay = '").substringBefore("'") - + val m3u8Url = playerScript.substringAfter("var urlPlay = '").substringBefore("'") sources.add( newExtractorLink( source = name, name = name, url = m3u8Url, - type = ExtractorLinkType.M3U8 + type = ExtractorLinkType.M3U8, ) { this.referer = "$mainUrl/" this.quality = Qualities.Unknown.value } ) } + return sources } -} \ No newline at end of file +} From 5426c1e3311b42d2182fa70121030258daaf4767 Mon Sep 17 00:00:00 2001 From: Luna712 <142361265+Luna712@users.noreply.github.com> Date: Sun, 28 Jun 2026 20:01:00 -0600 Subject: [PATCH 2/4] Use val --- .../lagradost/cloudstream3/extractors/EmturbovidExtractor.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt index 50f203546a9..262ed54e932 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt @@ -8,8 +8,8 @@ import com.lagradost.cloudstream3.utils.Qualities import com.lagradost.cloudstream3.utils.newExtractorLink open class EmturbovidExtractor : ExtractorApi() { - override var name = "Emturbovid" - override var mainUrl = "https://emturbovid.com" + override val name = "Emturbovid" + override val mainUrl = "https://emturbovid.com" override val requiresReferer = false override suspend fun getUrl(url: String, referer: String?): List? { From 62119cd49a355bcc115000c15da36c3e009b22d8 Mon Sep 17 00:00:00 2001 From: Luna712 <142361265+Luna712@users.noreply.github.com> Date: Mon, 6 Jul 2026 15:52:25 -0600 Subject: [PATCH 3/4] Update library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt Co-authored-by: firelight <147925818+fire-light42@users.noreply.github.com> --- .../lagradost/cloudstream3/extractors/EmturbovidExtractor.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt index 262ed54e932..45e0c1a1898 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt @@ -14,8 +14,9 @@ open class EmturbovidExtractor : ExtractorApi() { override suspend fun getUrl(url: String, referer: String?): List? { val response = app.get(url, referer = referer ?: "$mainUrl/") - val playerScript = response.document - .select("script:contains(var urlPlay)") + val playerScript2 = response.document + .select("script") + .first { it.data().contains("var urlPlay") } .html() val sources = mutableListOf() From 1ecdbd11100c46a35333b68db2e4e4e2de3c55b6 Mon Sep 17 00:00:00 2001 From: Luna712 <142361265+Luna712@users.noreply.github.com> Date: Mon, 6 Jul 2026 15:53:05 -0600 Subject: [PATCH 4/4] Fix --- .../lagradost/cloudstream3/extractors/EmturbovidExtractor.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt index 45e0c1a1898..ca821b21c61 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/EmturbovidExtractor.kt @@ -14,7 +14,7 @@ open class EmturbovidExtractor : ExtractorApi() { override suspend fun getUrl(url: String, referer: String?): List? { val response = app.get(url, referer = referer ?: "$mainUrl/") - val playerScript2 = response.document + val playerScript = response.document .select("script") .first { it.data().contains("var urlPlay") } .html()