Merge branch 'FongMi:main' into main
This commit is contained in:
commit
dbdb7dd128
|
|
@ -28,6 +28,8 @@ public class Result {
|
|||
private String format;
|
||||
@SerializedName("danmaku")
|
||||
private String danmaku;
|
||||
@SerializedName("msg")
|
||||
private String msg;
|
||||
@SerializedName("url")
|
||||
private Object url;
|
||||
@SerializedName("subs")
|
||||
|
|
@ -85,6 +87,10 @@ public class Result {
|
|||
return Result.get().vod(item).string();
|
||||
}
|
||||
|
||||
public static String error(String msg) {
|
||||
return Result.get().vod(Collections.emptyList()).msg(msg).string();
|
||||
}
|
||||
|
||||
public static Result get() {
|
||||
return new Result();
|
||||
}
|
||||
|
|
@ -159,6 +165,11 @@ public class Result {
|
|||
return this;
|
||||
}
|
||||
|
||||
public Result msg(String msg) {
|
||||
this.msg = msg;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Result format(String format) {
|
||||
this.format = format;
|
||||
return this;
|
||||
|
|
|
|||
|
|
@ -1,10 +1,19 @@
|
|||
package com.github.catvod.debug;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.os.*;
|
||||
|
||||
import android.view.ViewGroup;
|
||||
import android.webkit.CookieManager;
|
||||
import android.webkit.WebView;
|
||||
import android.webkit.WebViewClient;
|
||||
import com.github.catvod.R;
|
||||
import com.github.catvod.spider.Init;
|
||||
import com.github.catvod.net.OkHttp;
|
||||
import com.github.catvod.spider.*;
|
||||
import org.apache.commons.lang3.StringEscapeUtils;
|
||||
|
||||
import static com.github.catvod.utils.Util.addView;
|
||||
import static com.github.catvod.utils.Util.removeView;
|
||||
|
||||
public class MainActivity extends Activity {
|
||||
|
||||
|
|
@ -14,12 +23,64 @@ public class MainActivity extends Activity {
|
|||
setContentView(R.layout.activity_main);
|
||||
//Logger.addLogAdapter(new AndroidLogAdapter());
|
||||
Init.init(getApplicationContext());
|
||||
// It is usually init in the application.
|
||||
new Thread(() -> {
|
||||
try {
|
||||
|
||||
bypassCf("https://www.czzy88.com/xssearch?q=斗罗");
|
||||
while (cookie[0] == null) SystemClock.sleep(1000);
|
||||
System.out.println(html);
|
||||
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}).start();
|
||||
}
|
||||
|
||||
|
||||
static final String[] cookie = new String[1];
|
||||
static String html = "";
|
||||
public static void bypassCf(String url) {
|
||||
String content = OkHttp.string(url);
|
||||
if (content.contains("Just a moment...")) {
|
||||
Init.run(() -> {
|
||||
WebView webView = new WebView(Init.context());
|
||||
webView.getSettings().setDatabaseEnabled(true);
|
||||
webView.getSettings().setDomStorageEnabled(true);
|
||||
webView.getSettings().setJavaScriptEnabled(true);
|
||||
ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(0, 0);
|
||||
addView(webView, layoutParams);
|
||||
webView.setWebViewClient(new WebViewClient() {
|
||||
@Override
|
||||
public void onPageFinished(WebView view, String url1) {
|
||||
cookie[0] = CookieManager.getInstance().getCookie(url1);
|
||||
if (cookie[0] != null && cookie[0].contains("cf_clearance")) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
view.evaluateJavascript("(function() { return document.documentElement.outerHTML; })();",
|
||||
html -> {
|
||||
if (html != null && !html.isEmpty()) {
|
||||
String htmlString = html.replaceAll("^\"+|\"+$", "");
|
||||
MainActivity.html = StringEscapeUtils.unescapeJava(htmlString);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
if (view != null) {
|
||||
new Handler(Looper.getMainLooper()).post(() -> {
|
||||
removeView(webView);
|
||||
webView.destroy();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
webView.loadUrl(url);
|
||||
});
|
||||
} else {
|
||||
html = content;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -84,13 +84,14 @@ public class Kanqiu extends Spider {
|
|||
|
||||
@Override
|
||||
public String detailContent(List<String> ids) throws Exception {
|
||||
Document doc = Jsoup.parse(OkHttp.string(ids.get(0) + "-url", getHeader()));
|
||||
JSONArray jsonArray = new JSONArray(doc.text());
|
||||
if (ids.get(0).equals(siteUrl)) return Result.error("比賽尚未開始");
|
||||
String content = OkHttp.string(ids.get(0) + "-url", getHeader());
|
||||
JSONArray linksArray = new JSONObject(content).getJSONArray("links");
|
||||
List<String> vodItems = new ArrayList<>();
|
||||
for (int i = 0; i < jsonArray.length(); i++) {
|
||||
JSONObject dataObject = jsonArray.getJSONObject(i);
|
||||
String text = dataObject.optString("name");
|
||||
String href = dataObject.optString("url");
|
||||
for (int i = 0; i < linksArray.length(); i++) {
|
||||
JSONObject linkObject = linksArray.getJSONObject(i);
|
||||
String text = linkObject.optString("name");
|
||||
String href = linkObject.optString("url");
|
||||
vodItems.add(text + "$" + href);
|
||||
}
|
||||
String vod_play_from = "Qile";
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public class Zhaozy extends Ali {
|
|||
|
||||
private final Pattern regexAli = Pattern.compile("(https://www.aliyundrive.com/s/[^\"]+)");
|
||||
private final Pattern regexVid = Pattern.compile("(\\S+)");
|
||||
private final String siteUrl = "https://zhaoziyuan.me/";
|
||||
private final String siteUrl = "https://zhaoziyuan.pw/";
|
||||
private String username;
|
||||
private String password;
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1 +1 @@
|
|||
d793cc92ea62550b731392d15bacb859
|
||||
55c157414346e3ff571baad0a223bf15
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"spider": "https://fm.t4tv.hz.cz/jar/custom_spider.jar;md5;d793cc92ea62550b731392d15bacb859",
|
||||
"spider": "https://fm.t4tv.hz.cz/jar/custom_spider.jar;md5;55c157414346e3ff571baad0a223bf15",
|
||||
"wallpaper": "https://gao.chuqiuyu.workers.dev",
|
||||
"sites": [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"spider": "https://fm.t4tv.hz.cz/jar/custom_spider.jar;md5;d793cc92ea62550b731392d15bacb859",
|
||||
"spider": "https://fm.t4tv.hz.cz/jar/custom_spider.jar;md5;55c157414346e3ff571baad0a223bf15",
|
||||
"wallpaper": "http://饭太硬.top/深色壁纸/api.php",
|
||||
"sites": [
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue