Update Ali

This commit is contained in:
FongMi 2023-01-04 00:19:08 +08:00
parent f5d6b9a285
commit 200957d0fa
12 changed files with 36 additions and 47 deletions

View File

@ -11,10 +11,6 @@ public class Auth {
private String shareId;
private ImageView view;
public Auth(String refreshToken) {
this.refreshToken = refreshToken;
}
public String getRefreshToken() {
return TextUtils.isEmpty(refreshToken) ? "" : refreshToken;
}
@ -56,7 +52,7 @@ public class Auth {
}
public boolean isEmpty() {
return getRefreshToken().isEmpty();
return getAccessToken().isEmpty();
}
public void clean() {

View File

@ -43,13 +43,24 @@ public class Ali {
private final Pattern pattern = Pattern.compile("www.aliyundrive.com/s/([^/]+)(/folder/([^/]+))?");
private ScheduledExecutorService service;
private Auth auth;
private final Auth auth;
public Ali token(String token) {
if (auth != null && auth.getRefreshToken().length() > 0) return this;
private static class Loader {
static volatile Ali INSTANCE = new Ali();
}
public static Ali get() {
return Loader.INSTANCE;
}
public Ali() {
this.auth = new Auth();
}
public Ali init(String token) {
if (TextUtils.isEmpty(token)) Init.show("尚未設定 Token");
if (token.startsWith("http")) token = OkHttp.string(token);
auth = new Auth(Prefers.getString("token", token));
auth.setRefreshToken(Prefers.getString("token", token));
return this;
}

View File

@ -17,7 +17,6 @@ public class Init {
private final Handler handler;
private Application app;
private Ali ali;
private static class Loader {
static volatile Init INSTANCE = new Init();
@ -28,7 +27,6 @@ public class Init {
}
public Init() {
this.ali = new Ali();
this.handler = new Handler(Looper.getMainLooper());
}
@ -36,14 +34,6 @@ public class Init {
return get().app;
}
public static Ali getAli() {
return get().ali;
}
public static void setAli(Ali ali) {
get().ali = ali;
}
public static void init(Context context) {
SpiderDebug.log("自定義爬蟲代碼載入成功!");
get().app = ((Application) context);

View File

@ -25,7 +25,6 @@ import java.util.Map;
public class PanSou extends Spider {
private final String siteUrl = "https://www.alipansou.com";
private Ali ali;
private Map<String, String> getHeaders(String id) {
HashMap<String, String> headers = new HashMap<>();
@ -37,7 +36,7 @@ public class PanSou extends Spider {
@Override
public void init(Context context, String extend) {
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
@ -46,7 +45,7 @@ public class PanSou extends Spider {
Map<String, List<String>> respHeaders = new HashMap<>();
OkHttp.stringNoRedirect(url, getHeaders(ids.get(0)), respHeaders);
url = OkHttp.getRedirectLocation(respHeaders);
return ali.detailContent(Arrays.asList(url));
return Ali.get().detailContent(Arrays.asList(url));
}
@Override
@ -75,6 +74,6 @@ public class PanSou extends Spider {
@Override
public String playerContent(String flag, String id, List<String> vipFlags) {
return ali.playerContent(flag, id);
return Ali.get().playerContent(flag, id);
}
}

View File

@ -32,7 +32,6 @@ public class Paper extends Spider {
private final String url = "https://gitcafe.net/alipaper/";
private final String api = "https://gitcafe.net/tool/alipaper/";
private List<String> types;
private Ali ali;
private HashMap<String, String> getHeaders() {
HashMap<String, String> headers = new HashMap<>();
@ -43,7 +42,7 @@ public class Paper extends Spider {
@Override
public void init(Context context, String extend) {
types = Arrays.asList("hyds", "rhds", "omds", "qtds", "hydy", "rhdy", "omdy", "qtdy", "hydm", "rhdm", "omdm", "jlp", "zyp", "jypx", "qtsp");
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
@ -93,7 +92,7 @@ public class Paper extends Spider {
@Override
public String detailContent(List<String> ids) throws Exception {
return ali.detailContent(ids);
return Ali.get().detailContent(ids);
}
@Override
@ -109,6 +108,6 @@ public class Paper extends Spider {
@Override
public String playerContent(String flag, String id, List<String> vipFlags) throws Exception {
return ali.playerContent(flag, id);
return Ali.get().playerContent(flag, id);
}
}

View File

@ -18,7 +18,7 @@ public class Proxy extends Spider {
case "ck":
return new Object[]{200, "text/plain; charset=utf-8", new ByteArrayInputStream("ok".getBytes("UTF-8"))};
case "ali":
return Init.getAli().vod(params);
return Ali.get().vod(params);
default:
return null;
}

View File

@ -11,17 +11,15 @@ import java.util.List;
public class Push extends Spider {
private Ali ali;
@Override
public void init(Context context, String extend) {
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
public String detailContent(List<String> ids) throws Exception {
String url = ids.get(0).trim();
if (url.contains("aliyundrive")) return ali.detailContent(ids);
if (url.contains("aliyundrive")) return Ali.get().detailContent(ids);
if (Misc.isVip(url)) return Result.string(vod(url, "官源"));
if (Misc.isVideoFormat(url)) return Result.string(vod(url, "直連"));
return Result.string(vod(url, "網頁"));
@ -29,7 +27,7 @@ public class Push extends Spider {
@Override
public String playerContent(String flag, String id, List<String> vipFlags) {
if (flag.contains("")) return ali.playerContent(flag, id);
if (flag.contains("")) return Ali.get().playerContent(flag, id);
if (flag.equals("官源")) return Result.get().parse().jx().url(id).string();
if (flag.equals("網頁")) return Result.get().parse().url(id).string();
return Result.get().url(id).string();

View File

@ -22,7 +22,6 @@ public class UpYun extends Spider {
private final String siteUrl = "https://www.upyunso.com/";
private final String apiUrl = "https://api.upyunso2.com/";
private Ali ali;
private Map<String, String> getHeaders() {
HashMap<String, String> headers = new HashMap<>();
@ -33,12 +32,12 @@ public class UpYun extends Spider {
@Override
public void init(Context context, String extend) {
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
public String detailContent(List<String> ids) throws Exception {
return ali.detailContent(Arrays.asList(ids.get(0)));
return Ali.get().detailContent(Arrays.asList(ids.get(0)));
}
@Override
@ -52,6 +51,6 @@ public class UpYun extends Spider {
@Override
public String playerContent(String flag, String id, List<String> vipFlags) {
return ali.playerContent(flag, id);
return Ali.get().playerContent(flag, id);
}
}

View File

@ -20,21 +20,19 @@ import java.util.Objects;
public class YiSo extends Spider {
private Ali ali;
@Override
public void init(Context context, String extend) {
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
public String detailContent(List<String> ids) throws Exception {
return ali.detailContent(ids);
return Ali.get().detailContent(ids);
}
@Override
public String playerContent(String flag, String id, List<String> vipFlags) throws Exception {
return ali.playerContent(flag, id);
return Ali.get().playerContent(flag, id);
}
@Override

View File

@ -25,7 +25,6 @@ public class Zhaozy extends Spider {
private final Pattern regexAli = Pattern.compile("(https://www.aliyundrive.com/s/[^\"]+)");
private final Pattern regexVid = Pattern.compile("(\\S+)");
private final String siteUrl = "https://zhaoziyuan.la/";
private Ali ali;
private Map<String, String> getHeader() {
Map<String, String> headers = new HashMap<>();
@ -52,7 +51,7 @@ public class Zhaozy extends Spider {
@Override
public void init(Context context, String extend) {
ali = Init.getAli().token(extend);
Ali.get().init(extend);
}
@Override
@ -60,12 +59,12 @@ public class Zhaozy extends Spider {
Matcher matcher = regexAli.matcher(OkHttp.string(siteUrl + ids.get(0), getHeader()));
if (!matcher.find()) return "";
ids.set(0, matcher.group(1));
return ali.detailContent(ids);
return Ali.get().detailContent(ids);
}
@Override
public String playerContent(String flag, String id, List<String> vipFlags) throws Exception {
return ali.playerContent(flag, id);
return Ali.get().playerContent(flag, id);
}
@Override

Binary file not shown.

View File

@ -1 +1 @@
462dc3df9ddfcbb3c1933c172f634f7c
b6cec380ddab899d275cf2fec2ed676a