From 41c0c35f79422a0ad960ad73a09d25051080c230 Mon Sep 17 00:00:00 2001 From: Zaw <42999156+ImZaw@users.noreply.github.com> Date: Thu, 1 Sep 2022 12:02:44 +0300 Subject: [PATCH] maybe a fix for faselhd --- .../kotlin/com/faselhd/FaselHDProvider.kt | 53 +++++++++++-------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/FaselHDProvider/src/main/kotlin/com/faselhd/FaselHDProvider.kt b/FaselHDProvider/src/main/kotlin/com/faselhd/FaselHDProvider.kt index 92d8e80..80d6dd6 100644 --- a/FaselHDProvider/src/main/kotlin/com/faselhd/FaselHDProvider.kt +++ b/FaselHDProvider/src/main/kotlin/com/faselhd/FaselHDProvider.kt @@ -148,28 +148,37 @@ class FaselHD : MainAPI() { callback: (ExtractorLink) -> Unit ): Boolean { val doc = app.get(data).document - val player = app.get(doc.select(".downloadLinks a").attr("href"), interceptor = CloudflareKiller(), referer = data).document - callback.invoke( - ExtractorLink( - this.name, - this.name + "Download Source", - player.select("div.dl-link a").attr("href"), - this.mainUrl, - Qualities.Unknown.value - ) - ) - val webView = WebViewResolver( - Regex("""master\.m3u8""") - ).resolveUsingWebView( - requestCreator( - "GET", doc.select("iframe[name=\"player_iframe\"]").attr("src"), referer = mainUrl - ) - ).first - M3u8Helper.generateM3u8( - this.name, - webView?.url.toString(), - referer = mainUrl - ).forEach(callback) + listOf( + doc.select(".downloadLinks a").attr("href") to "download", + doc.select("iframe[name=\"player_iframe\"]").attr("src") to "iframe" + ).apmap { (url, method) -> + if(method == "download") { + val player = app.get(url, interceptor = CloudflareKiller(), referer = mainUrl).document + println(player) + callback.invoke( + ExtractorLink( + this.name, + this.name + " Download Source", + player.select("div.dl-link a").attr("href"), + this.mainUrl, + Qualities.Unknown.value + ) + ) + } else if(method == "iframe") { + val webView = WebViewResolver( + Regex("""master\.m3u8""") + ).resolveUsingWebView( + requestCreator( + "GET", url, referer = mainUrl + ) + ).first + M3u8Helper.generateM3u8( + this.name, + webView?.url.toString(), + referer = mainUrl + ).forEach(callback) + } + } return true } }