pull/589/head
FongMi 9 months ago
parent f31900365e
commit c316a0b32a
  1. 8
      app/src/main/java/com/fongmi/android/tv/bean/Site.java
  2. 14
      app/src/main/java/com/fongmi/android/tv/model/SiteViewModel.java
  3. 2
      catvod/src/main/java/com/github/catvod/net/OkHttp.java

@ -15,6 +15,7 @@ import com.fongmi.android.tv.api.loader.BaseLoader;
import com.fongmi.android.tv.db.AppDatabase;
import com.fongmi.android.tv.gson.ExtAdapter;
import com.github.catvod.crawler.Spider;
import com.github.catvod.net.OkHttp;
import com.github.catvod.utils.Json;
import com.github.catvod.utils.Trans;
import com.google.gson.JsonElement;
@ -267,6 +268,13 @@ public class Site implements Parcelable {
return Headers.of(Json.toMap(getHeader()));
}
public Site fetchExt() {
if (!getExt().startsWith("http")) return this;
String extend = OkHttp.string(getExt());
if (!extend.isEmpty()) setExt(extend);
return this;
}
public Site trans() {
if (Trans.pass()) return this;
List<String> categories = new ArrayList<>();

@ -24,7 +24,6 @@ import com.fongmi.android.tv.utils.Sniffer;
import com.github.catvod.crawler.Spider;
import com.github.catvod.crawler.SpiderDebug;
import com.github.catvod.net.OkHttp;
import com.github.catvod.utils.Json;
import com.github.catvod.utils.Trans;
import com.github.catvod.utils.Util;
@ -76,7 +75,7 @@ public class SiteViewModel extends ViewModel {
} else if (site.getType() == 4) {
ArrayMap<String, String> params = new ArrayMap<>();
params.put("filter", "true");
String homeContent = call(site, params);
String homeContent = call(site.fetchExt(), params);
SpiderDebug.log(homeContent);
return Result.fromJson(homeContent);
} else {
@ -239,17 +238,10 @@ public class SiteViewModel extends ViewModel {
}
private String call(Site site, ArrayMap<String, String> params) throws IOException {
String extend = fetchExt(site);
if (!extend.isEmpty()) params.put("extend", extend);
if (!site.getExt().isEmpty()) params.put("extend", site.getExt());
Call get = OkHttp.newCall(site.getApi(), site.getHeaders(), params);
Call post = OkHttp.newCall(site.getApi(), site.getHeaders(), OkHttp.toBody(params));
return (extend.length() <= 1000 ? get : post).execute().body().string();
}
private String fetchExt(Site site) {
String extend = OkHttp.string(site.getExt(), Json.toMap(site.getHeader()));
if (!extend.isEmpty()) site.setExt(extend);
return site.getExt();
return (site.getExt().length() <= 1000 ? get : post).execute().body().string();
}
private Result fetchPic(Site site, Result result) throws Exception {

@ -125,7 +125,7 @@ public class OkHttp {
public static String string(String url, Map<String, String> headers) {
try {
return newCall(url, Headers.of(headers)).execute().body().string();
return url.startsWith("http") ? newCall(url, Headers.of(headers)).execute().body().string() : "";
} catch (Exception e) {
e.printStackTrace();
return "";

Loading…
Cancel
Save