diff --git a/app/src/main/java/com/github/catvod/spider/AList.java b/app/src/main/java/com/github/catvod/spider/AList.java index ffd87f23..292dc53f 100644 --- a/app/src/main/java/com/github/catvod/spider/AList.java +++ b/app/src/main/java/com/github/catvod/spider/AList.java @@ -1,6 +1,7 @@ package com.github.catvod.spider; import android.content.Context; +import android.net.Uri; import android.text.TextUtils; import com.github.catvod.bean.Class; @@ -28,6 +29,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -147,7 +149,20 @@ public class AList extends Spider { @Override public String playerContent(String flag, String id, List vipFlags) { String[] ids = id.split("~~~"); - return Result.get().url(getDetail(ids[0]).getUrl()).subs(getSub(ids)).string(); + String url = getDetail(ids[0]).getUrl(); + return Result.get().url(url).header(getPlayHeader(url)).subs(getSub(ids)).string(); + } + + private Map getPlayHeader(String url) { + try { + Uri uri = Uri.parse(url); + Map header = new HashMap<>(); + if (uri.getHost().contains("115.com")) header.put("User-Agent", Util.CHROME); + else if (uri.getHost().contains("baidupcs.com")) header.put("User-Agent", "pan.baidu.com"); + return header; + } catch (Exception e) { + return new HashMap<>(); + } } private boolean login(Drive drive) { diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index 4c303c2c..bcaf075b 100644 Binary files a/jar/custom_spider.jar and b/jar/custom_spider.jar differ diff --git a/jar/custom_spider.jar.md5 b/jar/custom_spider.jar.md5 index f41a01a0..47b70d43 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -eb9ef1e338ee3b01ef1c1c388841d7bb +2dd1047cb29daf7d351201a1cca49ae5