[Feature] Added VIP HD links to all in preparation for NNN

This commit is contained in:
Jace 2022-11-03 07:04:32 +08:00
parent 2d5ab87eeb
commit 8d94a47bdd
11 changed files with 131 additions and 13 deletions

View File

@ -6,6 +6,7 @@ import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.getQualityFromName
import com.fasterxml.jackson.annotation.JsonProperty
import com.lagradost.cloudstream3.mvvm.logError
import com.lagradost.cloudstream3.utils.Qualities
import java.text.SimpleDateFormat
import java.util.*
import khttp.structures.cookie.CookieJar
@ -261,6 +262,17 @@ class Hahomoe : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
val soup = app.get(data).document
val sources = ArrayList<ExtractorLink>()

View File

@ -11,6 +11,7 @@ import com.lagradost.cloudstream3.utils.getQualityFromName
import com.fasterxml.jackson.module.kotlin.readValue
import com.lagradost.cloudstream3.network.CloudflareKiller
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.Qualities
import java.text.SimpleDateFormat
import java.util.*
import kotlin.collections.ArrayList
@ -278,6 +279,17 @@ class Hanime : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
val res = app.get(data).text
val response = tryParseJson<HanimeEpisodeData>(res)

View File

@ -5,6 +5,7 @@ import com.fasterxml.jackson.annotation.JsonProperty
import com.lagradost.cloudstream3.*
import com.lagradost.cloudstream3.mvvm.logError
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.getQualityFromName
import org.jsoup.select.Elements
@ -104,7 +105,17 @@ class HentaiHaven : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
try {
Log.i(name, "Loading iframe")
val requestLink = "${mainUrl}/wp-content/plugins/player-logic/api.php"

View File

@ -6,6 +6,7 @@ import com.lagradost.cloudstream3.app
import com.lagradost.cloudstream3.mvvm.logError
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.Jsoup
@ -139,7 +140,17 @@ class JavFreeProvider : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
try {
// GET request to: https://player.javfree.sh/stream/687234424271726c
val id = data.substring(data.indexOf("#")).substring(1)

View File

@ -6,6 +6,7 @@ import com.lagradost.cloudstream3.app
import com.lagradost.cloudstream3.utils.AppUtils.toJson
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.nodes.Element
@ -241,7 +242,17 @@ class JavHD : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
var count = 0
tryParseJson<List<String>>(data.trim())?.apmap { vid ->
Log.i(this.name, "Result => (vid) $vid")

View File

@ -6,6 +6,7 @@ import com.lagradost.cloudstream3.*
import com.lagradost.cloudstream3.utils.AppUtils.toJson
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.Jsoup
@ -172,7 +173,17 @@ class JavSubProvider : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
var count = 0
tryParseJson<List<String>>(data)?.apmap { link ->
Log.i(this.name, "Result => (link) $link")

View File

@ -4,11 +4,8 @@ import android.util.Log
import com.fasterxml.jackson.annotation.JsonProperty
import com.lagradost.cloudstream3.*
import com.lagradost.cloudstream3.app
import com.lagradost.cloudstream3.utils.AppUtils
import com.lagradost.cloudstream3.utils.*
import com.lagradost.cloudstream3.utils.AppUtils.toJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.getQualityFromName
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.Jsoup
class JavTube : MainAPI() {
@ -153,9 +150,17 @@ class JavTube : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
if (data.isEmpty()) return false
if (data == "about:blank") return false
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
AppUtils.tryParseJson<JsonRequest?>(data)?.let { reqdata ->
Log.i(DEV, "Referer => ${reqdata.url}")
app.post(

View File

@ -7,6 +7,7 @@ import com.lagradost.cloudstream3.extractors.XStreamCdn
import com.lagradost.cloudstream3.utils.AppUtils.toJson
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.extractorApis
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.nodes.Element
@ -209,7 +210,17 @@ class OpJav : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
var count = 0
tryParseJson<List<String>>(data)?.forEach { link ->
val url = fixUrl(link.trim())

View File

@ -103,6 +103,17 @@ class Pornhub : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
app.get(
url = data,
interceptor = WebViewResolver(

View File

@ -9,6 +9,7 @@ import com.lagradost.cloudstream3.mvvm.logError
import com.lagradost.cloudstream3.network.CloudflareKiller
import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.Qualities
import com.lagradost.cloudstream3.utils.getQualityFromName
import com.lagradost.nicehttp.NiceResponse
@ -125,6 +126,17 @@ class Vlxx : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
val pathSplits = data.split("/")
val id = pathSplits[pathSplits.size - 2]
Log.i(DEV, "Data -> ${data} id -> ${id}")

View File

@ -4,7 +4,6 @@ import com.lagradost.cloudstream3.*
import com.lagradost.cloudstream3.mvvm.logError
import com.lagradost.cloudstream3.utils.*
class XvideosProvider : MainAPI() {
private val globalTvType = TvType.NSFW
override var mainUrl = "https://www.xvideos.com"
@ -134,6 +133,18 @@ class XvideosProvider : MainAPI() {
subtitleCallback: (SubtitleFile) -> Unit,
callback: (ExtractorLink) -> Unit
): Boolean {
//NNN
callback.invoke(
ExtractorLink(
source = this.name,
name = "${this.name} VIP HD",
url = "https://biblescreen.faithlifecdn.com/biblescreen/bibleScreen/playlist.m3u8",//"https://files.catbox.moe/9czzyk.mp4",
referer = data,
quality = Qualities.P2160.value,
isM3u8 = true
)
)
app.get(data).document.select("script").apmap { script ->
if (script.data().contains("HTML5Player")) {
val extractedlink = script.data().substringAfter(".setVideoHLS('")