Delete Lib.java
This commit is contained in:
@@ -1,412 +0,0 @@
|
|||||||
//
|
|
||||||
// Decompiled by Jadx - 671ms
|
|
||||||
//
|
|
||||||
package com.github.catvod.spider;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.text.TextUtils;
|
|
||||||
import com.github.catvod.crawler.Spider;
|
|
||||||
import com.github.catvod.crawler.SpiderDebug;
|
|
||||||
import com.github.catvod.spider.merge.Hq;
|
|
||||||
import com.github.catvod.spider.merge.JD;
|
|
||||||
import com.github.catvod.spider.merge.Vf;
|
|
||||||
import com.github.catvod.spider.merge.ex;
|
|
||||||
import com.github.catvod.spider.merge.vR;
|
|
||||||
import java.net.URLEncoder;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Comparator;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.TreeMap;
|
|
||||||
import java.util.regex.Matcher;
|
|
||||||
import java.util.regex.Pattern;
|
|
||||||
import org.json.JSONArray;
|
|
||||||
import org.json.JSONException;
|
|
||||||
import org.json.JSONObject;
|
|
||||||
|
|
||||||
public class Lib extends Spider {
|
|
||||||
private JSONObject u;
|
|
||||||
private JSONObject ue;
|
|
||||||
private Pattern B = Pattern.compile("/type/(\\d+).html");
|
|
||||||
private Pattern W = Pattern.compile("/detail/(\\d+).html");
|
|
||||||
private Pattern Pd = Pattern.compile("/play/(\\d+)-(\\d+)-(\\d+).html");
|
|
||||||
private Pattern u6 = Pattern.compile("/show/(\\S+).html");
|
|
||||||
protected String jw = null;
|
|
||||||
|
|
||||||
private static String B(Pattern pattern, String str) {
|
|
||||||
if (pattern == null) {
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
Matcher matcher = pattern.matcher(str);
|
|
||||||
if (matcher.find()) {
|
|
||||||
return matcher.group(1).trim();
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static HashMap<String, String> ue() {
|
|
||||||
HashMap<String, String> hashMap = new HashMap<>();
|
|
||||||
hashMap.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.62 Safari/537.36");
|
|
||||||
hashMap.put("Referer", "https://www.libvio.me/");
|
|
||||||
return hashMap;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected HashMap<String, String> W(String str) {
|
|
||||||
HashMap<String, String> hashMap = new HashMap<>();
|
|
||||||
hashMap.put("method", "GET");
|
|
||||||
hashMap.put("Upgrade-Insecure-Requests", "1");
|
|
||||||
hashMap.put("DNT", "1");
|
|
||||||
hashMap.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36");
|
|
||||||
hashMap.put("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
|
|
||||||
hashMap.put("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");
|
|
||||||
return hashMap;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String categoryContent(String str, String str2, boolean z, HashMap<String, String> hashMap) {
|
|
||||||
int i;
|
|
||||||
int i2;
|
|
||||||
try {
|
|
||||||
int i3 = 1;
|
|
||||||
String[] strArr = {"", "", "", "", "", "", "", "", "", "", "", ""};
|
|
||||||
strArr[0] = str;
|
|
||||||
strArr[8] = str2;
|
|
||||||
if (hashMap != null && hashMap.size() > 0) {
|
|
||||||
for (String str3 : hashMap.keySet()) {
|
|
||||||
strArr[Integer.parseInt(str3)] = URLEncoder.encode(hashMap.get(str3));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
String str4 = "https://www.libvio.me/show/" + TextUtils.join("-", strArr) + ".html";
|
|
||||||
String h = Vf.h(str4, W(str4));
|
|
||||||
vR ue = JD.ue(h);
|
|
||||||
JSONObject jSONObject = new JSONObject();
|
|
||||||
ex B1 = ue.B1("ul.stui-page__item li");
|
|
||||||
if (B1.size() == 0) {
|
|
||||||
i2 = Integer.parseInt(str2);
|
|
||||||
i = i2;
|
|
||||||
} else {
|
|
||||||
int i4 = -1;
|
|
||||||
i = -1;
|
|
||||||
int i5 = 0;
|
|
||||||
while (true) {
|
|
||||||
if (i5 >= B1.size()) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
Hq hq = (Hq) B1.get(i5);
|
|
||||||
Hq O = hq.O("a");
|
|
||||||
if (O != null) {
|
|
||||||
String pE = O.pE();
|
|
||||||
if (i == i4 && hq.f("active")) {
|
|
||||||
Matcher matcher = this.u6.matcher(O.Pd("href"));
|
|
||||||
i = matcher.find() ? Integer.parseInt(matcher.group(1).split("-")[8]) : 0;
|
|
||||||
}
|
|
||||||
if (pE.equals("尾页")) {
|
|
||||||
Matcher matcher2 = this.u6.matcher(O.Pd("href"));
|
|
||||||
if (matcher2.find()) {
|
|
||||||
i2 = Integer.parseInt(matcher2.group(1).split("-")[8]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
i5++;
|
|
||||||
i4 = -1;
|
|
||||||
}
|
|
||||||
i2 = 0;
|
|
||||||
}
|
|
||||||
JSONArray jSONArray = new JSONArray();
|
|
||||||
if (!h.contains("没有找到您想要的结果哦")) {
|
|
||||||
ex B12 = ue.B1("div.stui-vodlist__box");
|
|
||||||
int i6 = 0;
|
|
||||||
while (i6 < B12.size()) {
|
|
||||||
Hq hq2 = (Hq) B12.get(i6);
|
|
||||||
String ue2 = hq2.B1("a").ue("title");
|
|
||||||
String ue3 = hq2.B1("a").ue("data-original");
|
|
||||||
String jw = hq2.B1("a .pic-text").jw();
|
|
||||||
Matcher matcher3 = this.W.matcher(hq2.B1("a").ue("href"));
|
|
||||||
if (matcher3.find()) {
|
|
||||||
String group = matcher3.group(i3);
|
|
||||||
JSONObject jSONObject2 = new JSONObject();
|
|
||||||
jSONObject2.put("vod_id", group);
|
|
||||||
jSONObject2.put("vod_name", ue2);
|
|
||||||
jSONObject2.put("vod_pic", ue3);
|
|
||||||
jSONObject2.put("vod_remarks", jw);
|
|
||||||
jSONArray.put(jSONObject2);
|
|
||||||
}
|
|
||||||
i6++;
|
|
||||||
i3 = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
jSONObject.put("page", i);
|
|
||||||
jSONObject.put("pagecount", i2);
|
|
||||||
jSONObject.put("limit", 48);
|
|
||||||
jSONObject.put("total", i2 <= 1 ? jSONArray.length() : i2 * 48);
|
|
||||||
jSONObject.put("list", jSONArray);
|
|
||||||
return jSONObject.toString();
|
|
||||||
} catch (Exception e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public String detailContent(List<String> list) {
|
|
||||||
String str;
|
|
||||||
Exception e;
|
|
||||||
vR ue;
|
|
||||||
JSONObject jSONObject;
|
|
||||||
JSONObject jSONObject2;
|
|
||||||
String ue2;
|
|
||||||
String jw;
|
|
||||||
ex B1;
|
|
||||||
String B;
|
|
||||||
String B2;
|
|
||||||
String B3;
|
|
||||||
String B4;
|
|
||||||
String str2;
|
|
||||||
boolean z;
|
|
||||||
Hq hq;
|
|
||||||
Matcher matcher;
|
|
||||||
try {
|
|
||||||
String str3 = "https://www.libvio.me/detail/" + list.get(0) + ".html";
|
|
||||||
ue = JD.ue(Vf.h(str3, W(str3)));
|
|
||||||
jSONObject = new JSONObject();
|
|
||||||
jSONObject2 = new JSONObject();
|
|
||||||
ue2 = ue.B1("div.stui-content__thumb a img").ue("data-original");
|
|
||||||
jw = ue.B1("div.stui-content__detail h1").jw();
|
|
||||||
B1 = ue.B1("p.data");
|
|
||||||
B = B(Pattern.compile("类型:(\\S+)"), ((Hq) B1.get(0)).pE());
|
|
||||||
B2 = B(Pattern.compile("地区:(\\S+)"), ((Hq) B1.get(0)).pE());
|
|
||||||
B3 = B(Pattern.compile("年份:(\\S+)"), ((Hq) B1.get(0)).pE());
|
|
||||||
B4 = B(Pattern.compile("更新:(\\S+)"), ((Hq) B1.get(3)).pE());
|
|
||||||
str = "";
|
|
||||||
} catch (Exception e2) {
|
|
||||||
e = e2;
|
|
||||||
str = "";
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
String B5 = B(Pattern.compile("主演:(\\S+)"), ((Hq) B1.get(1)).pE());
|
|
||||||
String B6 = B(Pattern.compile("导演:(\\S+)"), ((Hq) B1.get(1)).pE());
|
|
||||||
String trim = ue.O("span.detail-content").pE().trim();
|
|
||||||
jSONObject2.put("vod_id", list.get(0));
|
|
||||||
jSONObject2.put("vod_name", jw);
|
|
||||||
jSONObject2.put("vod_pic", ue2);
|
|
||||||
jSONObject2.put("type_name", B);
|
|
||||||
jSONObject2.put("vod_year", B3);
|
|
||||||
jSONObject2.put("vod_area", B2);
|
|
||||||
jSONObject2.put("vod_remarks", B4);
|
|
||||||
jSONObject2.put("vod_actor", B5);
|
|
||||||
jSONObject2.put("vod_director", B6);
|
|
||||||
jSONObject2.put("vod_content", trim);
|
|
||||||
TreeMap treeMap = new TreeMap((Comparator) new Lib$1(this));
|
|
||||||
ex B12 = ue.B1("div.stui-vodlist__head h3");
|
|
||||||
ex B13 = ue.B1("ul.stui-content__playlist");
|
|
||||||
for (int i = 0; i < B12.size(); i++) {
|
|
||||||
String pE = ((Hq) B12.get(i)).pE();
|
|
||||||
Iterator<String> keys = this.ue.keys();
|
|
||||||
while (true) {
|
|
||||||
if (!keys.hasNext()) {
|
|
||||||
str2 = pE;
|
|
||||||
z = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
str2 = keys.next();
|
|
||||||
if (this.ue.getJSONObject(str2).getString("sh").equals(pE)) {
|
|
||||||
z = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (z) {
|
|
||||||
ex B14 = ((Hq) B13.get(i)).B1("li a");
|
|
||||||
ArrayList arrayList = new ArrayList();
|
|
||||||
for (int i2 = 0; i2 < B14.size(); i2++) {
|
|
||||||
if (this.Pd.matcher(((Hq) B14.get(i2)).Pd("href")).find()) {
|
|
||||||
arrayList.add(hq.pE() + "$" + (matcher.group(1) + "-" + matcher.group(2) + "-" + matcher.group(3)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
String join = arrayList.size() > 0 ? TextUtils.join("#", arrayList) : str;
|
|
||||||
if (join.length() != 0) {
|
|
||||||
treeMap.put(str2, join);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (treeMap.size() > 0) {
|
|
||||||
String join2 = TextUtils.join("$$$", treeMap.keySet());
|
|
||||||
String join3 = TextUtils.join("$$$", treeMap.values());
|
|
||||||
jSONObject2.put("vod_play_from", join2);
|
|
||||||
jSONObject2.put("vod_play_url", join3);
|
|
||||||
}
|
|
||||||
JSONArray jSONArray = new JSONArray();
|
|
||||||
jSONArray.put(jSONObject2);
|
|
||||||
jSONObject.put("list", jSONArray);
|
|
||||||
return jSONObject.toString();
|
|
||||||
} catch (Exception e3) {
|
|
||||||
e = e3;
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public String homeContent(boolean z) {
|
|
||||||
int i;
|
|
||||||
try {
|
|
||||||
vR ue = JD.ue(Vf.h("https://www.libvio.me/", W("https://www.libvio.me/")));
|
|
||||||
ex B1 = ue.B1("ul.stui-header__menu li a");
|
|
||||||
JSONArray jSONArray = new JSONArray();
|
|
||||||
Iterator it = B1.iterator();
|
|
||||||
while (true) {
|
|
||||||
i = 0;
|
|
||||||
if (!it.hasNext()) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
Hq hq = (Hq) it.next();
|
|
||||||
String pE = hq.pE();
|
|
||||||
if (pE.equals("电影") || pE.equals("剧集") || pE.equals("动漫") || pE.equals("日韩剧") || pE.equals("欧美剧")) {
|
|
||||||
i = 1;
|
|
||||||
}
|
|
||||||
if (i != 0) {
|
|
||||||
Matcher matcher = this.B.matcher(hq.Pd("href"));
|
|
||||||
if (matcher.find()) {
|
|
||||||
String trim = matcher.group(1).trim();
|
|
||||||
JSONObject jSONObject = new JSONObject();
|
|
||||||
jSONObject.put("type_id", trim);
|
|
||||||
jSONObject.put("type_name", pE);
|
|
||||||
jSONArray.put(jSONObject);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
JSONObject jSONObject2 = new JSONObject();
|
|
||||||
if (z) {
|
|
||||||
jSONObject2.put("filters", this.u);
|
|
||||||
}
|
|
||||||
jSONObject2.put("class", jSONArray);
|
|
||||||
try {
|
|
||||||
ex B12 = ((Hq) ue.B1("ul.stui-vodlist").get(0)).B1("div.stui-vodlist__box");
|
|
||||||
JSONArray jSONArray2 = new JSONArray();
|
|
||||||
while (i < B12.size()) {
|
|
||||||
Hq hq2 = (Hq) B12.get(i);
|
|
||||||
String ue2 = hq2.B1("a").ue("title");
|
|
||||||
String ue3 = hq2.B1("a").ue("data-original");
|
|
||||||
String jw = hq2.B1("a .pic-text").jw();
|
|
||||||
Matcher matcher2 = this.W.matcher(hq2.B1("a").ue("href"));
|
|
||||||
if (matcher2.find()) {
|
|
||||||
String group = matcher2.group(1);
|
|
||||||
JSONObject jSONObject3 = new JSONObject();
|
|
||||||
jSONObject3.put("vod_id", group);
|
|
||||||
jSONObject3.put("vod_name", ue2);
|
|
||||||
jSONObject3.put("vod_pic", ue3);
|
|
||||||
jSONObject3.put("vod_remarks", jw);
|
|
||||||
jSONArray2.put(jSONObject3);
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
jSONObject2.put("list", jSONArray2);
|
|
||||||
} catch (Exception e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
}
|
|
||||||
return jSONObject2.toString();
|
|
||||||
} catch (Exception e2) {
|
|
||||||
SpiderDebug.log(e2);
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void init(Context context) {
|
|
||||||
Lib.super.init(context);
|
|
||||||
try {
|
|
||||||
JSONObject jSONObject = new JSONObject(Vf.h("http://xn--sss604efuw.ml/tvb/json/Lib.json", (Map) null));
|
|
||||||
this.ue = jSONObject.getJSONObject("player");
|
|
||||||
this.u = jSONObject.getJSONObject("filter");
|
|
||||||
} catch (JSONException e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public String playerContent(String str, String str2, List<String> list) {
|
|
||||||
try {
|
|
||||||
JSONObject jSONObject = new JSONObject();
|
|
||||||
jSONObject.put("origin", " https://www.libvio.me/");
|
|
||||||
jSONObject.put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0");
|
|
||||||
jSONObject.put("Accept", " */*");
|
|
||||||
jSONObject.put("Accept-Language", " zh-CN,zh;q=0.9,en-US;q=0.3,en;q=0.7");
|
|
||||||
jSONObject.put("Accept-Encoding", " gzip, deflate");
|
|
||||||
jSONObject.put("referer", " https://www.libvio.me/");
|
|
||||||
String str3 = "https://www.libvio.me//play/" + str2 + ".html";
|
|
||||||
ex B1 = JD.ue(Vf.h(str3, W(str3))).B1("script");
|
|
||||||
int i = 0;
|
|
||||||
while (true) {
|
|
||||||
if (i >= B1.size()) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
String trim = ((Hq) B1.get(i)).Wt().trim();
|
|
||||||
if (trim.startsWith("var player_")) {
|
|
||||||
JSONObject jSONObject2 = new JSONObject(trim.substring(trim.indexOf(123), trim.lastIndexOf(125) + 1));
|
|
||||||
if (this.ue.has(jSONObject2.getString("from"))) {
|
|
||||||
JSONObject jSONObject3 = this.ue.getJSONObject(jSONObject2.getString("from"));
|
|
||||||
if (jSONObject2.getString("from").contains("LINE")) {
|
|
||||||
vR ue = JD.ue(Vf.h(jSONObject3.getString("pu") + jSONObject2.getString("url"), ue()));
|
|
||||||
Pattern compile = Pattern.compile("(?<=urls\\s=\\s').*?(?=')");
|
|
||||||
ex B12 = ue.B1("body script");
|
|
||||||
for (int i2 = 0; i2 < B12.size(); i2++) {
|
|
||||||
Matcher matcher = compile.matcher(((Hq) B12.get(i2)).Wt().trim());
|
|
||||||
if (matcher.find()) {
|
|
||||||
JSONObject jSONObject4 = new JSONObject();
|
|
||||||
String group = matcher.group(0);
|
|
||||||
jSONObject4.put("parse", 0);
|
|
||||||
jSONObject4.put("playUrl", "");
|
|
||||||
jSONObject4.put("url", group);
|
|
||||||
return jSONObject4.toString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
SpiderDebug.log(str3);
|
|
||||||
JSONObject jSONObject5 = new JSONObject();
|
|
||||||
jSONObject5.put("parse", 1);
|
|
||||||
jSONObject5.put("playUrl", "");
|
|
||||||
jSONObject5.put("url", str3);
|
|
||||||
return jSONObject5.toString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
public String searchContent(String str, boolean z) {
|
|
||||||
try {
|
|
||||||
String str2 = "https://www.libvio.me//index.php/ajax/suggest?mid=1&wd=" + URLEncoder.encode(str) + "&limit=10×tamp=" + System.currentTimeMillis();
|
|
||||||
JSONObject jSONObject = new JSONObject(Vf.h(str2, W(str2)));
|
|
||||||
JSONObject jSONObject2 = new JSONObject();
|
|
||||||
JSONArray jSONArray = new JSONArray();
|
|
||||||
if (jSONObject.getInt("total") > 0) {
|
|
||||||
JSONArray jSONArray2 = new JSONArray(jSONObject.getString("list"));
|
|
||||||
for (int i = 0; i < jSONArray2.length(); i++) {
|
|
||||||
JSONObject jSONObject3 = jSONArray2.getJSONObject(i);
|
|
||||||
String string = jSONObject3.getString("id");
|
|
||||||
String string2 = jSONObject3.getString("name");
|
|
||||||
String string3 = jSONObject3.getString("pic");
|
|
||||||
if (!TextUtils.isEmpty(string3) && !string3.startsWith("http")) {
|
|
||||||
string3 = "https://www.libvio.me/" + string3;
|
|
||||||
}
|
|
||||||
JSONObject jSONObject4 = new JSONObject();
|
|
||||||
jSONObject4.put("vod_id", string);
|
|
||||||
jSONObject4.put("vod_name", string2);
|
|
||||||
jSONObject4.put("vod_pic", string3);
|
|
||||||
jSONObject4.put("vod_remarks", "");
|
|
||||||
jSONArray.put(jSONObject4);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
jSONObject2.put("list", jSONArray);
|
|
||||||
return jSONObject2.toString();
|
|
||||||
} catch (Exception e) {
|
|
||||||
SpiderDebug.log(e);
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user