diff --git a/app/build.gradle b/app/build.gradle index 667cd70d..d8009929 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -67,6 +67,7 @@ dependencies { implementation 'androidx.core:core-ktx:1.10.1' testImplementation "io.github.dokar3:quickjs-kt-jvm:1.0.0-alpha13" testImplementation 'org.nanohttpd:nanohttpd:2.3.1' + implementation 'cn.hutool:hutool-all:5.8.26' // Required -- JUnit 4 framework testImplementation 'junit:junit:4.12' diff --git a/app/src/main/java/com/github/catvod/api/QuarkApi.java b/app/src/main/java/com/github/catvod/api/QuarkApi.java index 5ea7b08a..28f630c5 100644 --- a/app/src/main/java/com/github/catvod/api/QuarkApi.java +++ b/app/src/main/java/com/github/catvod/api/QuarkApi.java @@ -69,7 +69,7 @@ public class QuarkApi { headers.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) quark-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch"); headers.put("Referer", "https://pan.quark.cn/"); headers.put("Content-Type", "application/json"); - headers.put("Cookie", cache.getUser().getCookie()); + headers.put("Cookie", cookie); headers.put("Host", "drive-pc.quark.cn"); return headers; } @@ -78,7 +78,7 @@ public class QuarkApi { Map headers = new HashMap<>(); headers.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) quark-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch"); headers.put("Referer", "https://pan.quark.cn/"); - headers.put("Cookie", cache.getUser().getCookie()); + headers.put("Cookie", cookie); return headers; } diff --git a/app/src/test/java/CompileJSTest.kt b/app/src/test/java/CompileJSTest.kt index b9976d7a..7fdf7f18 100644 --- a/app/src/test/java/CompileJSTest.kt +++ b/app/src/test/java/CompileJSTest.kt @@ -6,7 +6,10 @@ import com.github.catvod.net.OkHttp import com.github.catvod.spider.ChangZhang import com.github.catvod.spider.Init import com.github.catvod.utils.FileUtil +import com.github.catvod.utils.Json import com.github.catvod.utils.Util +import com.google.common.collect.ImmutableMap +import com.google.common.collect.Maps import junit.framework.TestCase.assertEquals import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers @@ -35,26 +38,37 @@ class CompileJSTest { @Throws(Exception::class) fun homeContent(): Unit { - val content = - OkHttp.string("https://androidcatvodspider.pages.dev/json/js/jpyy2.js")/* val bytes = context!!.compileModule(content, "newvision.js") + val content = OkHttp.string("https://androidcatvodspider.pages.dev/json/js/jpyy2.js")/* val bytes = context!!.compileModule(content, "newvision.js") val result = "//bb" + Util.base64Encode(bytes)*/ val scope = CoroutineScope(Dispatchers.Default) fun startTask() = runBlocking { launch { + val json = Json.toJson(ImmutableMap.of("url", "https://androidcatvodspider.pages.dev/json/js/jpyy2.js")); quickJs { - - val bytecode = compile( - code = content, - filename = "jpyy", + val helloModuleCode = """ + export function greeting(to) { + return "Hi from the hello module!"+ to.url; + } + """.trimIndent() + addModule(name = "hello", code = helloModuleCode) + var result: Any? = null + function("returns") { result = it.first() } + val to = "mike"; + evaluate( + """ + import * as hello from "hello"; + let map= JSON.parse('${json}') + returns(hello.greeting(map)) + + """.trimIndent(), asModule = true, ) - val str = org.bouncycastle.util.encoders.Base64.encode(bytecode); - FileWriter("jpyy.j").write("//bb" +String(str)) - System.out.println("//bb" +String(str)) - //assertEquals("Hi from the hello module!", result) + println("result:" + result) } + + } } startTask() diff --git a/app/src/test/java/QuarkTest.java b/app/src/test/java/QuarkTest.java index cb88c532..36ef90ba 100644 --- a/app/src/test/java/QuarkTest.java +++ b/app/src/test/java/QuarkTest.java @@ -26,7 +26,8 @@ public class QuarkTest { mockContext = RuntimeEnvironment.application; Init.init(mockContext); spider = new Quark(); - spider.init(mockContext, "b-user-id=89ede34e-0efc-e1dd-c997-f16aaa792d0c; _UP_A4A_11_=wb9661c6dfb642f88f73d8e0c7edd398; b-user-id=89ede34e-0efc-e1dd-c997-f16aaa792d0c; ctoken=wla6p3EUOLyn1FSB8IKp1SEW; grey-id=5583e32b-39df-4bf0-f39f-1adf83f604a2; grey-id.sig=p8ReBIMG2BeZu1sYvsuOAZxYbx-MVrsfKEiCv87MsTM; isQuark=true; isQuark.sig=hUgqObykqFom5Y09bll94T1sS9abT1X-4Df_lzgl8nM; _UP_F7E_8D_=ZkyvVHnrBLp1A1NFJIjWi0PwKLOVbxJPcg0RzQPI6KmBtV6ZMgPh38l93pgubgHDQqhaZ2Sfc0qv%2BRantbfg1mWGAUpRMP4RqXP78Wvu%2FCfvkWWGc5NhCTV71tGOIGgDBR3%2Bu6%2Fjj44KlE5biSNDOWW7Bigcz27lvOTidzNw8s%2FWtKAIxWbnCzZn4%2FJMBUub1SIMcW89g57k4mfPmDlCgpZKzxwl6beSfdtZ4RUWXmZOn5v5NkxVKhU4wR0Pq7NklczEGdRq2nIAcu7v22Uw2o%2FxMY0xBdeC9Korm5%2FNHnxl6K%2Bd6FXSoT9a3XIMQO359auZPiZWzrNlZe%2BqnOahXcx7KAhQIRqSOapSmL4ygJor4r5isJhRuDoXy7vJAVuH%2FRDtEJJ8rZTq0BdC23Bz%2B0MrsdgbK%2BiW; _UP_D_=pc; __wpkreporterwid_=3d3f74a7-99b7-4916-3f78-911fc2eb9d87; tfstk=fIoZNxjnbhKwPOu0TWZ4LsaRqirTcudSSmNbnxD0C5VgClMm8xMyB-GsnSu4tjpOflAOmSD-9PNiGl120XrgkVNb1SrqHbJBN3tSBAEYoQOWVUUg9qZ8n1bGGkD3CqGYINKSBABhjnXgp3_Vywz6gSc0Syj3BWf0mr2DLW24eZfiiovEKWefj1q0swq3E82iNEMinMy7SLrcpA4Fh3z_ZAViCfih3PbtdW5N_DuU77AaTijmYRkL2Wq54ENoy5a7ZXxCbok33XzS7QSZgxD-oyoVsdGotql0p2dVu7umC4nLStbiLmParc4FELHrI-c0u2dPVRrs8zoZWKCnIbNZrlHfUCMUz2z8KyXVSlgSFmUojh58OzeqTzgwaGll4YCYKwctDV5coP2LL79eKHxpNTXHmre1kZU32JPWCR_AkP2LL79eLZQY-WeUNdw1.; __pus=2051c82285199d8be553be41dd5a2100AAQ+mmv35G4FDDZ5x+3Mhe2OMbNgweQ1ODbW8zDt9YuP1LQVqHUuAAz9KWLsPjpNtim0AVGHusN4MCosTmbq/khM; __kp=e6604120-6051-11ef-bfe4-c31b6cdd0766; __kps=AATcZArVgS76EPn0FMaV4HEj; __ktd=sii/iz4ePzEaoVirXul7QQ==; __uid=AATcZArVgS76EPn0FMaV4HEj; __itrace_wid=5829b95d-dac1-48d3-bfd5-f60cd9462786; __puus=7da0b96cb710fa1b376934485f977e05AATp/q8/QupT7IiBR1GWqZhxlIRT677smMvoHlLxQA0Lk6CkP0YJBOTl+p9DZgzlMz6w4hPXPgWsokukk8PW7ZfhFfPmv8tKMgLpCGLW+tk57luhNghmSdTeVPkAF59STtyCPBEtiNzNAd/zZJ6qILJDi5ywEBAAAg+gOyWHoLHNUR+QxeHRuQa8g5WWA95J8jebIlrr8rCvI1vjTbtiYktT"); + // spider.init(mockContext, "b-user-id=89ede34e-0efc-e1dd-c997-f16aaa792d0c; _UP_A4A_11_=wb9661c6dfb642f88f73d8e0c7edd398; b-user-id=89ede34e-0efc-e1dd-c997-f16aaa792d0c; ctoken=wla6p3EUOLyn1FSB8IKp1SEW; grey-id=5583e32b-39df-4bf0-f39f-1adf83f604a2; grey-id.sig=p8ReBIMG2BeZu1sYvsuOAZxYbx-MVrsfKEiCv87MsTM; isQuark=true; isQuark.sig=hUgqObykqFom5Y09bll94T1sS9abT1X-4Df_lzgl8nM; _UP_F7E_8D_=ZkyvVHnrBLp1A1NFJIjWi0PwKLOVbxJPcg0RzQPI6KmBtV6ZMgPh38l93pgubgHDQqhaZ2Sfc0qv%2BRantbfg1mWGAUpRMP4RqXP78Wvu%2FCfvkWWGc5NhCTV71tGOIGgDBR3%2Bu6%2Fjj44KlE5biSNDOWW7Bigcz27lvOTidzNw8s%2FWtKAIxWbnCzZn4%2FJMBUub1SIMcW89g57k4mfPmDlCgpZKzxwl6beSfdtZ4RUWXmZOn5v5NkxVKhU4wR0Pq7NklczEGdRq2nIAcu7v22Uw2o%2FxMY0xBdeC9Korm5%2FNHnxl6K%2Bd6FXSoT9a3XIMQO359auZPiZWzrNlZe%2BqnOahXcx7KAhQIRqSOapSmL4ygJor4r5isJhRuDoXy7vJAVuH%2FRDtEJJ8rZTq0BdC23Bz%2B0MrsdgbK%2BiW; _UP_D_=pc; __wpkreporterwid_=3d3f74a7-99b7-4916-3f78-911fc2eb9d87; tfstk=fIoZNxjnbhKwPOu0TWZ4LsaRqirTcudSSmNbnxD0C5VgClMm8xMyB-GsnSu4tjpOflAOmSD-9PNiGl120XrgkVNb1SrqHbJBN3tSBAEYoQOWVUUg9qZ8n1bGGkD3CqGYINKSBABhjnXgp3_Vywz6gSc0Syj3BWf0mr2DLW24eZfiiovEKWefj1q0swq3E82iNEMinMy7SLrcpA4Fh3z_ZAViCfih3PbtdW5N_DuU77AaTijmYRkL2Wq54ENoy5a7ZXxCbok33XzS7QSZgxD-oyoVsdGotql0p2dVu7umC4nLStbiLmParc4FELHrI-c0u2dPVRrs8zoZWKCnIbNZrlHfUCMUz2z8KyXVSlgSFmUojh58OzeqTzgwaGll4YCYKwctDV5coP2LL79eKHxpNTXHmre1kZU32JPWCR_AkP2LL79eLZQY-WeUNdw1.; __pus=2051c82285199d8be553be41dd5a2100AAQ+mmv35G4FDDZ5x+3Mhe2OMbNgweQ1ODbW8zDt9YuP1LQVqHUuAAz9KWLsPjpNtim0AVGHusN4MCosTmbq/khM; __kp=e6604120-6051-11ef-bfe4-c31b6cdd0766; __kps=AATcZArVgS76EPn0FMaV4HEj; __ktd=sii/iz4ePzEaoVirXul7QQ==; __uid=AATcZArVgS76EPn0FMaV4HEj; __itrace_wid=5829b95d-dac1-48d3-bfd5-f60cd9462786; __puus=7da0b96cb710fa1b376934485f977e05AATp/q8/QupT7IiBR1GWqZhxlIRT677smMvoHlLxQA0Lk6CkP0YJBOTl+p9DZgzlMz6w4hPXPgWsokukk8PW7ZfhFfPmv8tKMgLpCGLW+tk57luhNghmSdTeVPkAF59STtyCPBEtiNzNAd/zZJ6qILJDi5ywEBAAAg+gOyWHoLHNUR+QxeHRuQa8g5WWA95J8jebIlrr8rCvI1vjTbtiYktT"); + spider.init(mockContext, "_UP_A4A_11_=wb9681fbaed6454a8112f31e53b5c0be; __pus=45beefa93e8775c9211487d0c8ddd2b1AASCmV5S7LY0dfX90N3p4wU/G4f/oS0gZK6cpxZMZiDtXt9s7KiSs3tVZOXnIDel69C9KaQ61IQlnLYH2rS4NGjO; __kp=fe663a90-68d5-11ef-8b23-e77b0eaa352c; __kps=AAT32Fob+vq66znO5UHSHAPi; __ktd=39oXE+BT53YlFgUfFVq9kw==; __uid=AAT32Fob+vq66znO5UHSHAPi; __puus=e9bde845408e93af1466983e6b7bb77eAASV1aKJKLRXGjvHRfwQJ5gum8y8i9CLDg/1kYtsXwaDklrMDOpCfXVExH7eX4QNuVG1SuHST0ZtZaxbtu50l4sqUzmPKVAMMJEGs+9LhaK77A1oR6EKxF0KU3xDtZqXuzLq1F6rTp4c6FxCAI88Pn2cAyfjRUKXgWa0rayxqa05xpMb8j2TozOp32D57rY1VlMZ5cIey07SBkUKhEu3wWCb"); } @@ -50,7 +51,7 @@ public class QuarkTest { @org.junit.Test public void playerContent() throws Exception { - String content = spider.playerContent("4K","c3f6b5fa48234c53909c65a4ff0f1888++0e042ee5e78d49bf0f37a298e98cc9aa++38c5e16d71f7++ix/AD/nd1YKvqquXoEA/uWlcxXYWz1hVf8VAbHm+Xbg=",new ArrayList<>()); + String content = spider.playerContent("普画","41ea9a50cbdd4e50b019bcd78687ebc1++92ead436dc1646265220b5b7e69ae76b++38c5e16d71f7++3uHtNwBmnz4E16wVXMC2iWZymZhbFqSpsSgokuehUT0=",new ArrayList<>()); System.out.println("playerContent--" + content); JsonObject map = Json.safeObject(content); Gson gson = new GsonBuilder().setPrettyPrinting().create(); diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 42539e25..34eaa0ed 100644 Binary files a/jar/custom_spider.jar and b/jar/custom_spider.jar differ diff --git a/jar/custom_spider.jar.md5 b/jar/custom_spider.jar.md5 index 2b21ea6f..c91f0b5f 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -43080d42df601a2093db8c85d86a2515 +315da0e838557cf626527cb29e8dbb17 diff --git a/json/index.json b/json/index.json index 63a1a215..7de5ec86 100644 --- a/json/index.json +++ b/json/index.json @@ -1,5 +1,5 @@ { - "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;43080d42df601a2093db8c85d86a2515", + "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;315da0e838557cf626527cb29e8dbb17", "lives": [ { "name": "直播ipv6", diff --git a/json/index1.json b/json/index1.json index c21b6ee6..ee2dfa04 100644 --- a/json/index1.json +++ b/json/index1.json @@ -1,5 +1,5 @@ { - "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;43080d42df601a2093db8c85d86a2515", + "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;315da0e838557cf626527cb29e8dbb17", "lives": [ { "name": "直播ipv6", diff --git a/json/index2.json b/json/index2.json index 27d7b6d6..02301611 100644 --- a/json/index2.json +++ b/json/index2.json @@ -1,5 +1,5 @@ { - "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;43080d42df601a2093db8c85d86a2515", + "spider": "https://androidcatvodspider.pages.dev/jar/custom_spider.jar;md5;315da0e838557cf626527cb29e8dbb17", "lives": [ { "name": "直播ipv6",