From d2a524ac21f702fb4de0276f409ca1a1cab95859 Mon Sep 17 00:00:00 2001
From: gzlinz2 <107169210+gzlinz2@users.noreply.github.com>
Date: Sun, 9 Oct 2022 07:48:08 +0000
Subject: [PATCH] Delete Ysgc.java
---
.../java/com/github/catvod/spider/Ysgc.java | 394 ------------------
1 file changed, 394 deletions(-)
delete mode 100644 app/src/main/java/com/github/catvod/spider/Ysgc.java
diff --git a/app/src/main/java/com/github/catvod/spider/Ysgc.java b/app/src/main/java/com/github/catvod/spider/Ysgc.java
deleted file mode 100644
index ffc446a..0000000
--- a/app/src/main/java/com/github/catvod/spider/Ysgc.java
+++ /dev/null
@@ -1,394 +0,0 @@
-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.utils.Misc;
-import com.github.catvod.utils.okhttp.OkHttpUtil;
-
-import org.json.JSONArray;
-import org.json.JSONObject;
-
-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.Set;
-import java.util.TreeMap;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-/**
- * 影视工厂
- *
- * Author: 小黄瓜
- */
-public class Ysgc extends Spider {
-
- private static final String siteUrl = "https://www.ik4.cc";
- private static final String siteHost = "www.ik4.cc";
-
- protected JSONObject playerConfig = new JSONObject();
-
- @Override
- public void init(Context context) {
- super.init(context);
- }
-
- protected HashMap getHeaders(String url) {
- HashMap headers = new HashMap<>();
- headers.put("user-agent", "Dart/2.14 (dart:io)");
- headers.put("version", "1.9.8");
- headers.put("copyright", "xiaogui");
- headers.put("host", siteHost);
- headers.put("platform", "android");
- return headers;
- }
-
- @Override
- public String homeContent(boolean filter) {
- try {
- String url = siteUrl + "/xgapp.php/v1/nav?token=";
- JSONObject jsonObject = new JSONObject(OkHttpUtil.string(url, getHeaders(url)));
- JSONArray jsonArray = jsonObject.getJSONArray("data");
- JSONArray classes = new JSONArray();
- JSONObject filterConfig = new JSONObject();
- for (int i = 0; i < jsonArray.length(); i++) {
- JSONObject jObj = jsonArray.getJSONObject(i);
- String typeName = jObj.getString("type_name");
- if (typeName.equals("电视直播"))
- continue;
- String typeId = jObj.getString("type_id");
- JSONObject newCls = new JSONObject();
- newCls.put("type_id", typeId);
- newCls.put("type_name", typeName);
- classes.put(newCls);
- try {
- JSONObject typeExtend = jObj.getJSONObject("type_extend");
- Iterator typeExtendKeys = typeExtend.keys();
- JSONArray extendsAll = new JSONArray();
- while (typeExtendKeys.hasNext()) {
- String typeExtendKey = typeExtendKeys.next();
- String typeExtendName = null;
- switch (typeExtendKey) {
- case "class":
- typeExtendName = "类型";
- break;
- case "area":
- typeExtendName = "地区";
- break;
- case "lang":
- typeExtendName = "语言";
- break;
- case "year":
- typeExtendName = "年代";
- break;
- }
- if (typeExtendName == null) {
- SpiderDebug.log(typeExtendKey);
- continue;
- }
- String typeExtendStr = typeExtend.getString(typeExtendKey);
- if (typeExtendStr.trim().length() == 0)
- continue;
- String[] newTypeExtendKeys = typeExtendStr.split(",");
- JSONObject newTypeExtend = new JSONObject();
- newTypeExtend.put("key", typeExtendKey);
- newTypeExtend.put("name", typeExtendName);
- JSONArray newTypeExtendKV = new JSONArray();
- {
- JSONObject kvAll = new JSONObject();
- kvAll.put("n", "全部");
- kvAll.put("v", "");
- newTypeExtendKV.put(kvAll);
- }
- for (String k : newTypeExtendKeys) {
- if (typeExtendName.equals("伦理"))
- continue;
- JSONObject kv = new JSONObject();
- kv.put("n", k);
- kv.put("v", k);
- newTypeExtendKV.put(kv);
- }
- newTypeExtend.put("value", newTypeExtendKV);
- extendsAll.put(newTypeExtend);
- }
- filterConfig.put(typeId, extendsAll);
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
-
- }
- JSONObject result = new JSONObject();
- result.put("class", classes);
- if (filter) {
- result.put("filters", filterConfig);
- }
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
- return "";
- }
-
- @Override
- public String homeVideoContent() {
- try {
- String url = siteUrl + "/xgapp.php/v1/index_video?token=";
- JSONObject jsonObject = new JSONObject(OkHttpUtil.string(url, getHeaders(url)));
- JSONArray jsonArray = jsonObject.getJSONArray("data");
- JSONArray videos = new JSONArray();
- for (int i = 0; i < jsonArray.length(); i++) {
- JSONObject jObj = jsonArray.getJSONObject(i);
- JSONArray videoList = jObj.getJSONArray("vlist");
- for (int j = 0; j < videoList.length() && j < 6; j++) {
- JSONObject vObj = videoList.getJSONObject(j);
- JSONObject v = new JSONObject();
- v.put("vod_id", vObj.getString("vod_id"));
- v.put("vod_name", vObj.getString("vod_name"));
- v.put("vod_pic", vObj.getString("vod_pic"));
- v.put("vod_remarks", vObj.getString("vod_remarks"));
- videos.put(v);
- }
- }
- JSONObject result = new JSONObject();
- result.put("list", videos);
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
- return "";
- }
-
- @Override
- public String categoryContent(String tid, String pg, boolean filter, HashMap extend) {
- try {
- String url = siteUrl + "/xgapp.php/v1/video?tid=" + tid + "&pg=" + pg + "&token=";
- Set keys = extend.keySet();
- for (String key : keys) {
- url += "&" + key + "=" + URLEncoder.encode(extend.get(key));
- }
- JSONObject dataObject = new JSONObject(OkHttpUtil.string(url, getHeaders(url)));
- JSONArray jsonArray = dataObject.getJSONArray("data");
- JSONArray videos = new JSONArray();
- for (int i = 0; i < jsonArray.length(); i++) {
- JSONObject vObj = jsonArray.getJSONObject(i);
- JSONObject v = new JSONObject();
- v.put("vod_id", vObj.getString("vod_id"));
- v.put("vod_name", vObj.getString("vod_name"));
- v.put("vod_pic", vObj.getString("vod_pic"));
- v.put("vod_remarks", vObj.getString("vod_remarks"));
- videos.put(v);
- }
- JSONObject result = new JSONObject();
- int limit = 20;
- int page = dataObject.getInt("page");
- int total = dataObject.getInt("total");
- int pageCount = dataObject.getInt("pagecount");
- result.put("page", page);
- result.put("pagecount", pageCount);
- result.put("limit", limit);
- result.put("total", total);
- result.put("list", videos);
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
- return "";
- }
-
- @Override
- public String detailContent(List ids) {
- try {
- String url = siteUrl + "/xgapp.php/v1/video_detail?id=" + ids.get(0) + "&token=";
- JSONObject jsonObject = new JSONObject(OkHttpUtil.string(url, getHeaders(url)));
- JSONObject dataObject = jsonObject.getJSONObject("data");
- if (dataObject.has("vod_info")) {
- try {
- dataObject = dataObject.getJSONObject("vod_info");
- } catch (Exception e) {
-
- }
- }
- JSONObject vodList = new JSONObject();
- vodList.put("vod_id", dataObject.getString("vod_id"));
- vodList.put("vod_name", dataObject.getString("vod_name"));
- vodList.put("vod_pic", dataObject.getString("vod_pic"));
- vodList.put("type_name", dataObject.getString("vod_class"));
- vodList.put("vod_year", dataObject.getString("vod_year"));
- vodList.put("vod_area", dataObject.getString("vod_area"));
- vodList.put("vod_remarks", dataObject.getString("vod_remarks"));
- vodList.put("vod_actor", dataObject.getString("vod_actor"));
- vodList.put("vod_director", dataObject.getString("vod_director"));
- vodList.put("vod_content", dataObject.getString("vod_content"));
- JSONArray playerList = dataObject.getJSONArray("vod_url_with_player");
- List playFlags = new ArrayList<>();
- HashMap playUrls = new HashMap<>();
- for (int i = 0; i < playerList.length(); i++) {
- JSONObject playerListObj = playerList.getJSONObject(i);
- String from = playerListObj.getString("code");
- playUrls.put(from, playerListObj.getString("url"));
- playerListObj.remove("url");
- playerConfig.put(from, playerListObj);
- playFlags.add(from);
- }
-
- Map vod_play = new TreeMap<>(new Comparator() {
- @Override
- public int compare(String o1, String o2) {
- int sort1 = playFlags.indexOf(o1);
- int sort2 = playFlags.indexOf(o2);
-
- if (sort1 == sort2) {
- return 1;
- }
- return sort1 - sort2 > 0 ? 1 : -1;
- }
- });
-
- String[] vod_play_from_list = dataObject.getString("vod_play_from").split("\\$\\$\\$");
- String[] vod_play_url_list = dataObject.getString("vod_play_url").split("\\$\\$\\$");
-
- for (int i = 0; i < vod_play_from_list.length; i++) {
- String from = vod_play_from_list[i];
- if (i >= vod_play_url_list.length || vod_play_url_list[i].trim().length() == 0) {
- if (playUrls.containsKey(from) && playUrls.get(from).trim().length() > 0) {
- vod_play.put(vod_play_from_list[i], playUrls.get(from));
- }
- continue;
- }
- vod_play.put(vod_play_from_list[i], vod_play_url_list[i]);
- }
-
- String vod_play_from = TextUtils.join("$$$", vod_play.keySet());
- String vod_play_url = TextUtils.join("$$$", vod_play.values());
- vodList.put("vod_play_from", vod_play_from);
- vodList.put("vod_play_url", vod_play_url);
-
- JSONObject result = new JSONObject();
- JSONArray list = new JSONArray();
- list.put(vodList);
- result.put("list", list);
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
- return "";
- }
-
- private HashMap getHeaderJxs(String url) {
- HashMap headers = new HashMap<>();
- headers.put("platform_version", "LMY47I");
- headers.put("user-agent", "Dart/2.12 (dart:io)");
- headers.put("version", "1.6.4");
- headers.put("copyright", "xiaogui");
- headers.put("platform", "android");
- headers.put("client_name", "6L+95Ymn6L6+5Lq6");
- return headers;
- }
-
- @Override
- public String playerContent(String flag, String id, List vipFlags) {
- try {
- JSONObject result = new JSONObject();
- if (id.contains("hsl.ysgc.xyz")) {
- String uuu = "https://www.ysgc.cc/static/player/dplayer.php?url=" + id;
- HashMap headers = new HashMap();
- headers.put("referer", "https://www.ysgc.cc/");
- String content = OkHttpUtil.string(uuu, headers);
- Matcher matcher = Pattern.compile("url: url\\+'(.+?)',").matcher(content);
- if (matcher.find()) {
- result.put("parse", 0);
- result.put("playUrl", "");
- result.put("url", id + matcher.group(1));
- result.put("header", "{\"Referer\":\" https://www.ysgc.cc\"}");
- } else {
- result.put("parse", 1);
- result.put("playUrl", "");
- result.put("url", uuu);
- result.put("header", "{\"Referer\":\"https://www.ysgc.cc/\"}");
- }
- return result.toString();
- } else if (id.contains("duoduozy.com") || id.contains("m3u8.cache.suoyo.cc")) {
- String uuu = "https://www.6080kan.cc/app.php?url=" + id;
- String content = OkHttpUtil.string(uuu, null);
- return Misc.jsonParse(id, content).toString();
- }
- if (vipFlags.contains(flag)) {
- try {
- result.put("parse", 1);
- result.put("playUrl", "");
- result.put("url", id);
- return result.toString();
- } catch (Exception ee) {
- SpiderDebug.log(ee);
- }
- }
- JSONObject playerObj = playerConfig.getJSONObject(flag);
- String parseUrl = playerObj.getString("parse_api") + id;
- String content = OkHttpUtil.string(parseUrl, getHeaderJxs(parseUrl));
- JSONObject playerData = new JSONObject(content);
- JSONObject headers = new JSONObject();
- String ua = playerData.optString("user-agent", "");
- if (ua.trim().length() > 0) {
- headers.put("User-Agent", " " + ua);
- }
- String referer = playerData.optString("referer", "");
- if (referer.trim().length() > 0) {
- headers.put("Referer", " " + referer);
- }
- result.put("parse", 0);
- result.put("header", headers.toString());
- result.put("playUrl", "");
- result.put("url", playerData.getString("url"));
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- if (vipFlags.contains(flag)) {
- try {
- JSONObject result = new JSONObject();
- result.put("parse", 1);
- result.put("playUrl", "");
- result.put("url", id);
- return result.toString();
- } catch (Exception ee) {
- SpiderDebug.log(ee);
- }
- }
- }
- return "";
- }
-
- @Override
- public String searchContent(String key, boolean quick) {
- if (quick)
- return "";
- try {
- String url = siteUrl + "/xgapp.php/v1/search?text=" + URLEncoder.encode(key) + "&pg=1";
- String content = OkHttpUtil.string(url, getHeaders(url));
- JSONObject dataObject = new JSONObject(content);
- JSONArray jsonArray = dataObject.getJSONArray("data");
- JSONArray videos = new JSONArray();
- for (int i = 0; i < jsonArray.length(); i++) {
- JSONObject vObj = jsonArray.getJSONObject(i);
- JSONObject v = new JSONObject();
- v.put("vod_id", vObj.getString("vod_id"));
- v.put("vod_name", vObj.getString("vod_name"));
- v.put("vod_pic", vObj.getString("vod_pic"));
- v.put("vod_remarks", vObj.getString("vod_remarks"));
- videos.put(v);
- }
- JSONObject result = new JSONObject();
- result.put("list", videos);
- return result.toString();
- } catch (Exception e) {
- SpiderDebug.log(e);
- }
- return "";
- }
-}