diff --git a/app/src/main/java/com/github/catvod/bean/alist/Drive.java b/app/src/main/java/com/github/catvod/bean/alist/Drive.java index cdcdb4c4..06f402b8 100644 --- a/app/src/main/java/com/github/catvod/bean/alist/Drive.java +++ b/app/src/main/java/com/github/catvod/bean/alist/Drive.java @@ -20,7 +20,7 @@ public class Drive { @SerializedName("drives") private List drives; @SerializedName("params") - private Map params; + private List params; @SerializedName("login") private Login login; @SerializedName("vodPic") @@ -44,8 +44,8 @@ public class Drive { return drives == null ? new ArrayList<>() : drives; } - public Map getParams() { - return params == null ? new HashMap<>() : params; + public List getParams() { + return params == null ? new ArrayList<>() : params; } public Login getLogin() { @@ -153,6 +153,11 @@ public class Drive { return headers; } + public String findPass(String path) { + for (Param param : getParams()) if (path.startsWith(param.getPath())) return param.getPass(); + return ""; + } + @Override public boolean equals(Object obj) { if (this == obj) return true; diff --git a/app/src/main/java/com/github/catvod/bean/alist/Param.java b/app/src/main/java/com/github/catvod/bean/alist/Param.java new file mode 100644 index 00000000..9caafd21 --- /dev/null +++ b/app/src/main/java/com/github/catvod/bean/alist/Param.java @@ -0,0 +1,21 @@ +package com.github.catvod.bean.alist; + +import android.text.TextUtils; + +import com.google.gson.annotations.SerializedName; + +public class Param { + + @SerializedName("path") + private String path; + @SerializedName("pass") + private String pass; + + public String getPath() { + return TextUtils.isEmpty(path) ? "" : path; + } + + public String getPass() { + return TextUtils.isEmpty(pass) ? "" : pass; + } +} diff --git a/app/src/main/java/com/github/catvod/spider/AList.java b/app/src/main/java/com/github/catvod/spider/AList.java index cbbd73af..3898e923 100644 --- a/app/src/main/java/com/github/catvod/spider/AList.java +++ b/app/src/main/java/com/github/catvod/spider/AList.java @@ -166,7 +166,7 @@ public class AList extends Spider { path = path.startsWith(drive.getPath()) ? path : drive.getPath() + path; JSONObject params = new JSONObject(); params.put("path", path); - params.put("password", drive.getParams().get(path)); + params.put("password", drive.findPass(path)); String response = post(drive, drive.getApi(), params.toString()); return Item.objectFrom(getDetailJson(drive.isNew(), response)); } catch (Exception e) { @@ -182,7 +182,7 @@ public class AList extends Spider { path = path.startsWith(drive.getPath()) ? path : drive.getPath() + path; JSONObject params = new JSONObject(); params.put("path", path); - params.put("password", drive.getParams().get(path)); + params.put("password", drive.findPass(path)); String response = post(drive, drive.listApi(), params.toString()); List items = Item.arrayFrom(getListJson(drive.isNew(), response)); Iterator iterator = items.iterator(); diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 2ddcb8b0..fa86b11d 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 f95986e8..123c3b0c 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -9eeae00749e17517c5041546a98418cd +4556ab64060bfdf40d0e6dcc0145862e diff --git a/json/adult.json b/json/adult.json index 029fd892..1ea6fdba 100644 --- a/json/adult.json +++ b/json/adult.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;9eeae00749e17517c5041546a98418cd", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;4556ab64060bfdf40d0e6dcc0145862e", "wallpaper": "https://gao.chuqiuyu.tk", "sites": [ { diff --git a/json/alist.json b/json/alist.json index c83be6d6..e556340c 100644 --- a/json/alist.json +++ b/json/alist.json @@ -32,9 +32,12 @@ "username": "fongmi", "password": "fongmi" }, - "params": { - "/18/安齋拉拉": "1234" - } + "params": [ + { + "path": "/安齋拉拉", + "pass": "18181818" + } + ] } ] } diff --git a/json/config.json b/json/config.json index 1e461751..bb9314fc 100644 --- a/json/config.json +++ b/json/config.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;9eeae00749e17517c5041546a98418cd", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;4556ab64060bfdf40d0e6dcc0145862e", "wallpaper": "http://饭太硬.ga/深色壁纸/api.php", "sites": [ {