diff --git a/app/src/main/java/com/github/catvod/spider/Ali.java b/app/src/main/java/com/github/catvod/spider/Ali.java index 0a265042..652dd1af 100644 --- a/app/src/main/java/com/github/catvod/spider/Ali.java +++ b/app/src/main/java/com/github/catvod/spider/Ali.java @@ -106,12 +106,12 @@ public class Ali { body.put("share_id", shareId); String json = post("adrive/v3/share_link/get_share_by_anonymous", body); JSONObject object = new JSONObject(json); - LinkedHashMap name2id = new LinkedHashMap<>(); + LinkedHashMap fileMap = new LinkedHashMap<>(); Map> subMap = new HashMap<>(); - listFiles(new Item(getParentFileId(fileId, object)), name2id, subMap, shareId, shareToken); + listFiles(new Item(getParentFileId(fileId, object)), fileMap, subMap, shareId, shareToken); List playUrls = new ArrayList<>(); - List names = new ArrayList<>(name2id.keySet()); - for (String name : names) playUrls.add(Trans.get(name) + "$" + name2id.get(name) + findSubs(name, subMap)); + List files = new ArrayList<>(fileMap.keySet()); + for (Item file : files) playUrls.add(Trans.get(file.getDisplayName()) + "$" + fileMap.get(file) + findSubs(file.getName(), subMap)); if (playUrls.isEmpty()) playUrls.add("无数据$无数据"); List sourceUrls = new ArrayList<>(); sourceUrls.add(TextUtils.join("#", playUrls)); @@ -127,11 +127,11 @@ public class Ali { return vod; } - private void listFiles(Item folder, LinkedHashMap name2id, Map> subMap, String shareId, String shareToken) throws Exception { + private void listFiles(Item folder, LinkedHashMap name2id, Map> subMap, String shareId, String shareToken) throws Exception { listFiles(folder, name2id, subMap, shareId, shareToken, ""); } - private void listFiles(Item parent, LinkedHashMap name2id, Map> subMap, String shareId, String shareToken, String marker) throws Exception { + private void listFiles(Item parent, LinkedHashMap name2id, Map> subMap, String shareId, String shareToken, String marker) throws Exception { JSONObject body = new JSONObject(); List folders = new ArrayList<>(); body.put("limit", 200); @@ -145,7 +145,7 @@ public class Ali { if (file.getType().equals("folder")) { folders.add(file); } else if (file.getCategory().equals("video") || file.getCategory().equals("audio")) { - name2id.put(file.getDisplayName(), shareId + "+" + shareToken + "+" + file.getFileId()); + name2id.put(file, shareId + "+" + shareToken + "+" + file.getFileId()); } else if (Misc.isSub(file.getExt())) { String key = file.removeExt(); if (!subMap.containsKey(key)) subMap.put(key, new ArrayList<>()); @@ -226,7 +226,7 @@ public class Ali { } private String getPreviewQuality(JSONArray taskList) throws Exception { - for (String templateId : Arrays.asList("UHD", "QHD", "FHD", "HD", "SD", "LD")) { + for (String templateId : Arrays.asList("FHD", "HD", "SD", "LD")) { for (int i = 0; i < taskList.length(); ++i) { JSONObject task = taskList.getJSONObject(i); if (task.getString("template_id").equals(templateId)) { diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 70b2308b..93baf520 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 98881441..b29cd177 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -fcdb43bf3c66db75008f5c8983895f39 +3d3e7fb44db5b51e1ba102d6253c3949