Fix pansou
This commit is contained in:
parent
c833362b70
commit
9b9818762d
|
|
@ -6,6 +6,7 @@ import com.github.catvod.bean.Result;
|
||||||
import com.github.catvod.bean.Vod;
|
import com.github.catvod.bean.Vod;
|
||||||
import com.github.catvod.crawler.Spider;
|
import com.github.catvod.crawler.Spider;
|
||||||
import com.github.catvod.net.OkHttpUtil;
|
import com.github.catvod.net.OkHttpUtil;
|
||||||
|
import com.github.catvod.utils.Misc;
|
||||||
|
|
||||||
import org.jsoup.Jsoup;
|
import org.jsoup.Jsoup;
|
||||||
import org.jsoup.nodes.Element;
|
import org.jsoup.nodes.Element;
|
||||||
|
|
@ -13,21 +14,28 @@ import org.jsoup.select.Elements;
|
||||||
|
|
||||||
import java.net.URLEncoder;
|
import java.net.URLEncoder;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.regex.Matcher;
|
|
||||||
import java.util.regex.Pattern;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author ColaMint & FongMi
|
* @author ColaMint & FongMi
|
||||||
*/
|
*/
|
||||||
public class PanSou extends Spider {
|
public class PanSou extends Spider {
|
||||||
|
|
||||||
private final Pattern regexAliUrl = Pattern.compile("(https:\\/\\/www.aliyundrive.com\\/s\\/[^\\\"]+)");
|
|
||||||
private final String siteUrl = "https://www.alipansou.com";
|
private final String siteUrl = "https://www.alipansou.com";
|
||||||
|
private HashMap<String, String> header;
|
||||||
private Ali ali;
|
private Ali ali;
|
||||||
|
|
||||||
|
private Map<String, String> getHeaders(String id) {
|
||||||
|
HashMap<String, String> headers = new HashMap<>();
|
||||||
|
headers.put("User-Agent", Misc.CHROME);
|
||||||
|
headers.put("Referer", siteUrl + id);
|
||||||
|
headers.put("_bid", "d1810141fb539895ce233cdf66414ca7");
|
||||||
|
return headers;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init(Context context, String extend) {
|
public void init(Context context, String extend) {
|
||||||
ali = new Ali(extend);
|
ali = new Ali(extend);
|
||||||
|
|
@ -35,15 +43,11 @@ public class PanSou extends Spider {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String detailContent(List<String> ids) throws Exception {
|
public String detailContent(List<String> ids) throws Exception {
|
||||||
String url = ids.get(0);
|
String url = siteUrl + ids.get(0).replace("s", "cv");
|
||||||
Matcher matcher = regexAliUrl.matcher(url);
|
Map<String, List<String>> respHeaders = new HashMap<>();
|
||||||
if (matcher.find()) return ali.detailContent(ids);
|
OkHttpUtil.stringNoRedirect(url, getHeaders(ids.get(0)), respHeaders);
|
||||||
url = siteUrl + ids.get(0);
|
url = OkHttpUtil.getRedirectLocation(respHeaders);
|
||||||
String html = OkHttpUtil.string(url);
|
return ali.detailContent(Arrays.asList(url));
|
||||||
matcher = regexAliUrl.matcher(html);
|
|
||||||
if (!matcher.find()) return "";
|
|
||||||
ids.set(0, matcher.group(1).replace("\\/", "/"));
|
|
||||||
return ali.detailContent(ids);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -1 +1 @@
|
||||||
9f41e0f17e45a009989248435542b4bc
|
cdac5d0feef2fb20bb47496ec835a0a2
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue