Add UpYun
This commit is contained in:
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