diff --git a/app/src/main/java/com/github/catvod/api/YunDrive.java b/app/src/main/java/com/github/catvod/api/YunDrive.java index be0c3f32..d3a14770 100644 --- a/app/src/main/java/com/github/catvod/api/YunDrive.java +++ b/app/src/main/java/com/github/catvod/api/YunDrive.java @@ -5,11 +5,13 @@ import com.github.catvod.net.OkResult; import com.github.catvod.utils.Json; import com.google.gson.JsonElement; import com.google.gson.JsonObject; + import org.apache.commons.codec.binary.Base64; import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; + import java.io.IOException; import java.nio.charset.Charset; import java.security.GeneralSecurityException; @@ -183,7 +185,17 @@ public class YunDrive { OkResult okResult = OkHttp.post(baseUrl + "getContentInfoFromOutLink", Json.toJson(requestBody), Map.of("Accept-Encoding", "gzip, deflate, br, zstd", "User-Agent", baseHeaders.get("User-Agent"))); - return Json.safeObject(okResult.getBody()).getAsJsonObject("data").getAsJsonObject("contentInfo").get("presentURL").getAsString(); + String m3u8 = Json.safeObject(okResult.getBody()).getAsJsonObject("data").getAsJsonObject("contentInfo").get("presentURL").getAsString(); + + String m3u8Str = OkHttp.string(m3u8); + String resultUrl = m3u8; + for (String s : m3u8Str.split("\n")) { + if (s.contains("index.m3u8")) { + resultUrl = s; + break; + } + } + return m3u8.split("playlist.m3u8")[0]+resultUrl; } diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 729dcd73..0dd50ce6 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 9199b86f..08e76f63 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -c2b5441804db48277e1efddcffb3cefe +c792d86e7032adf77614775a3aaea124 diff --git a/json/index.json b/json/index.json index 824e091f..7063e836 100644 --- a/json/index.json +++ b/json/index.json @@ -1,5 +1,5 @@ { - "spider": "https://androidcatvodspider.netlify.app/jar/custom_spider.jar;md5;c2b5441804db48277e1efddcffb3cefe", + "spider": "https://androidcatvodspider.netlify.app/jar/custom_spider.jar;md5;c792d86e7032adf77614775a3aaea124", "lives": [ { "name": "电视直播",