parent
904a9fd8cb
commit
4643d2795a
@ -0,0 +1,26 @@ |
||||
package com.github.catvod.bean.upyun; |
||||
|
||||
import com.google.gson.Gson; |
||||
import com.google.gson.annotations.SerializedName; |
||||
|
||||
import java.util.List; |
||||
|
||||
public class Data { |
||||
|
||||
@SerializedName("result") |
||||
private Data result; |
||||
@SerializedName("items") |
||||
private List<Item> items; |
||||
|
||||
public static Data objectFrom(String str) { |
||||
return new Gson().fromJson(str, Data.class); |
||||
} |
||||
|
||||
public Data getResult() { |
||||
return result; |
||||
} |
||||
|
||||
public List<Item> getItems() { |
||||
return items; |
||||
} |
||||
} |
||||
@ -0,0 +1,36 @@ |
||||
package com.github.catvod.bean.upyun; |
||||
|
||||
import android.text.TextUtils; |
||||
|
||||
import com.github.catvod.bean.Vod; |
||||
import com.google.gson.annotations.SerializedName; |
||||
|
||||
public class Item { |
||||
|
||||
@SerializedName("title") |
||||
private String title; |
||||
@SerializedName("page_url") |
||||
private String pageUrl; |
||||
@SerializedName("insert_time") |
||||
private String insertTime; |
||||
|
||||
public String getTitle() { |
||||
return TextUtils.isEmpty(title) ? "" : title; |
||||
} |
||||
|
||||
public String getPageUrl() { |
||||
return TextUtils.isEmpty(pageUrl) ? "" : pageUrl; |
||||
} |
||||
|
||||
public String getInsertTime() { |
||||
return TextUtils.isEmpty(insertTime) ? "" : insertTime; |
||||
} |
||||
|
||||
public boolean isAli() { |
||||
return getPageUrl().contains("www.aliyundrive.com"); |
||||
} |
||||
|
||||
public Vod getVod() { |
||||
return new Vod(getPageUrl(), getTitle(), "https://inews.gtimg.com/newsapp_bt/0/13263837859/1000", getInsertTime()); |
||||
} |
||||
} |
||||
@ -0,0 +1,57 @@ |
||||
package com.github.catvod.spider; |
||||
|
||||
import android.content.Context; |
||||
import android.util.Base64; |
||||
|
||||
import com.github.catvod.bean.Result; |
||||
import com.github.catvod.bean.Vod; |
||||
import com.github.catvod.bean.upyun.Data; |
||||
import com.github.catvod.bean.upyun.Item; |
||||
import com.github.catvod.crawler.Spider; |
||||
import com.github.catvod.net.OkHttpUtil; |
||||
import com.github.catvod.utils.Misc; |
||||
|
||||
import java.net.URLEncoder; |
||||
import java.util.ArrayList; |
||||
import java.util.Arrays; |
||||
import java.util.HashMap; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
public class UpYun extends Spider { |
||||
|
||||
private final String siteUrl = "https://www.upyunso.com/"; |
||||
private final String apiUrl = "https://api.upyunso2.com/"; |
||||
private Ali ali; |
||||
|
||||
private Map<String, String> getHeaders() { |
||||
HashMap<String, String> headers = new HashMap<>(); |
||||
headers.put("User-Agent", Misc.CHROME); |
||||
headers.put("Referer", siteUrl); |
||||
return headers; |
||||
} |
||||
|
||||
@Override |
||||
public void init(Context context, String extend) { |
||||
ali = new Ali(extend); |
||||
} |
||||
|
||||
@Override |
||||
public String detailContent(List<String> ids) throws Exception { |
||||
return ali.detailContent(Arrays.asList(ids.get(0))); |
||||
} |
||||
|
||||
@Override |
||||
public String searchContent(String key, boolean quick) { |
||||
String url = apiUrl + "search?keyword=" + URLEncoder.encode(key) + "&page=1&s_type=2"; |
||||
String res = new String(Base64.decode(OkHttpUtil.string(url, getHeaders()), Base64.DEFAULT)); |
||||
List<Vod> list = new ArrayList<>(); |
||||
for (Item item : Data.objectFrom(res).getResult().getItems()) if (item.isAli()) list.add(item.getVod()); |
||||
return Result.string(list); |
||||
} |
||||
|
||||
@Override |
||||
public String playerContent(String flag, String id, List<String> vipFlags) { |
||||
return ali.playerContent(flag, id); |
||||
} |
||||
} |
||||
Binary file not shown.
@ -1 +1 @@ |
||||
c701ac2466579126d00de02842c21b75 |
||||
f39892c6cd9bc26eff6ad16ca21742c2 |
||||
|
||||
Loading…
Reference in new issue