feat: Convert VidbomExtractor to shared lib (#1471)
This commit is contained in:
22
lib/vidbom-extractor/build.gradle.kts
Normal file
22
lib/vidbom-extractor/build.gradle.kts
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
plugins {
|
||||||
|
id("com.android.library")
|
||||||
|
kotlin("android")
|
||||||
|
}
|
||||||
|
|
||||||
|
android {
|
||||||
|
compileSdk = AndroidConfig.compileSdk
|
||||||
|
namespace = "eu.kanade.tachiyomi.lib.vidbomextractor"
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
minSdk = AndroidConfig.minSdk
|
||||||
|
targetSdk = AndroidConfig.targetSdk
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
compileOnly(libs.kotlin.stdlib)
|
||||||
|
compileOnly(libs.okhttp)
|
||||||
|
compileOnly(libs.aniyomi.lib)
|
||||||
|
compileOnly(libs.jsoup)
|
||||||
|
}
|
||||||
|
// BUMPS: 0
|
@ -0,0 +1,23 @@
|
|||||||
|
package eu.kanade.tachiyomi.lib.vidbomextractor
|
||||||
|
|
||||||
|
import eu.kanade.tachiyomi.animesource.model.Video
|
||||||
|
import eu.kanade.tachiyomi.network.GET
|
||||||
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
|
import okhttp3.OkHttpClient
|
||||||
|
|
||||||
|
class VidBomExtractor(private val client: OkHttpClient) {
|
||||||
|
fun videosFromUrl(url: String): List<Video> {
|
||||||
|
val doc = client.newCall(GET(url)).execute().asJsoup()
|
||||||
|
val script = doc.selectFirst("script:containsData(sources)")!!
|
||||||
|
val data = script.data().substringAfter("sources: [").substringBefore("],")
|
||||||
|
|
||||||
|
return data.split("file:\"").drop(1).map { source ->
|
||||||
|
val src = source.substringBefore("\"")
|
||||||
|
var quality = "Vidbom: " + source.substringAfter("label:\"").substringBefore("\"")
|
||||||
|
if (quality.length > 15) {
|
||||||
|
quality = "Vidshare: 480p"
|
||||||
|
}
|
||||||
|
Video(src, quality, src)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user