mirror of https://github.com/gaotianliuyun/gao
parent
c0c40a2ccb
commit
dd19e643cc
@ -0,0 +1,237 @@ |
||||
globalThis.getTime = function(){ |
||||
let ts= Math.round(new Date().getTime()/1000).toString(); |
||||
log('获取时间戳:'+ts); |
||||
return ts |
||||
} |
||||
|
||||
globalThis.signUrl=function(json){ |
||||
// 获取所有节点的名称并按字母顺序排序
|
||||
let json1=JSON.parse(json); |
||||
var sortedKeys = Object.keys(json1).sort(); |
||||
// 遍历排好序的节点名称列表,并打印相应的值
|
||||
let s=''; |
||||
for (let key in sortedKeys){ |
||||
let value=json1[sortedKeys[key]]; |
||||
if(value!=undefined){ |
||||
s=s+value; |
||||
} |
||||
} |
||||
//log(s);
|
||||
//log(md5(s+"alskeuscli"));
|
||||
s=json.slice(0,-1)+",\"sign\":\""+md5(s+"alskeuscli")+"\"\}"; |
||||
log(s); |
||||
return s; |
||||
} |
||||
|
||||
globalThis.posturl=function(url,json){ |
||||
let html= fetch(url, { |
||||
body: JSON.parse(signUrl(json)), |
||||
headers: {"User-Agent": "okhttp/3.12.3"}, |
||||
method: "POST" |
||||
}, true); |
||||
return JSON.parse(html); |
||||
} |
||||
var rule = { |
||||
title: '喵次元[APP]', |
||||
host: 'https://cym.zhui.la/api.php', |
||||
hostJs:` |
||||
var json2 = '{"versionName":"5.6.9","uuid":"9cc01079c64e2495","version":"4835d0a2","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
let url="https://cym.zhui.la/api.php/type/get_list"; |
||||
let jo=posturl(url,json2).data.list; |
||||
let filters = {}; |
||||
let cb={"class":"类型","area":"地区","lang":"语言","year":"年份","star":"演员","director":"导演","state":"状态","version":"版本"}; |
||||
let class1=[]; |
||||
jo.forEach(function(tp) { |
||||
rule.class_name=rule.class_name +"&"+tp['type_name']; |
||||
rule.class_url=rule.class_url +"&"+tp['type_id']; |
||||
let ep=tp['type_extend']; |
||||
let classes = []; |
||||
for (let key in ep){ |
||||
let value=ep[key]; |
||||
|
||||
if (value.length>1){ |
||||
class1.append(key); |
||||
//写成{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"大陆"}]}这种格式
|
||||
let dd=value.toString().split(','); |
||||
var s=[]; |
||||
dd.forEach(function(i){ |
||||
s.append({'n':i,'v':i}); |
||||
}) |
||||
let ss={"key":key,"name":cb[key],"value":s}; |
||||
classes.append(ss); |
||||
} |
||||
} |
||||
filters[tp['type_id']]=classes; |
||||
}); |
||||
class1=Array.from(new Set(class1)).sort(); |
||||
let s="" |
||||
class1.forEach(function(tp) { |
||||
s=s+"&" + tp +"={{fl."+tp+"}}"; |
||||
}) |
||||
log(s); |
||||
rule.filter_url=s; |
||||
rule.filter=filters; |
||||
log(rule.filter); |
||||
log(rule.class_name); |
||||
log(rule.class_url); |
||||
`,
|
||||
|
||||
homeUrl:'?hpindigo=**&page=fypage', |
||||
url:'?t=fyclass&page=fypage', |
||||
filter_url:'', |
||||
filter: {}, |
||||
detailUrl:'?ids=', |
||||
searchUrl: '?hpindigo=**&page=fypage', |
||||
searchable: 2, |
||||
quickSearch: 0, |
||||
filterable:1,//是否启用分类筛选,
|
||||
headers:{'User-Agent':'MOBILE_UA'}, |
||||
timeout:10000, |
||||
class_name:'全部', // 分类筛选 /api.php/app/nav
|
||||
class_url:'0', |
||||
play_parse:true, |
||||
lazy:`js:
|
||||
log("*************测试*************"); |
||||
let dd=input.split("&"); |
||||
let ju_id=dd[0]; |
||||
let plyer=dd[1]; |
||||
let video_id=dd[2]; |
||||
var json2 = '{"player_id":"'+plyer+'","ju_id":"'+ju_id+'","vod_id":"'+video_id+'","versionName":"5.6.9","uuid":"3899af59c0b12b98","version":"4835d0a2","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
let url="https://cym.zhui.la/api.php/video/get_definition"; |
||||
let html = posturl(url,json2).data[0].url.trim(); |
||||
log(html); |
||||
//input=aesX("AES/CBC/PKCS7",false,html,true,"sLunqcoH85Nm/jDmFKns7A==","fedcba9876543210",false);
|
||||
//log(input);
|
||||
eval(getCryptoJS); |
||||
var key = CryptoJS.enc.Hex.parse("734C756E71636F4838354E6D2F6A446D464B6E7337413D3D0000000000000000"); |
||||
var iv = CryptoJS.enc.Utf8.parse("fedcba9876543210"); |
||||
input=(CryptoJS.AES.decrypt(html, key, { |
||||
iv: iv, |
||||
mode: CryptoJS.mode.CBC, |
||||
padding: CryptoJS.pad.Pkcs7 |
||||
})).toString(CryptoJS.enc.Utf8) |
||||
log(input) |
||||
`,
|
||||
//lazy:'js:input=/m3u8|mp4|flv/.test(input)?{jx:0,url:input,parse:0}:{jx:1,url:input,parse:1}',
|
||||
limit:6, |
||||
// 推荐:'json:items;*;*;*;*',
|
||||
推荐:'json:data.sections[0].items;*;*;*;*', |
||||
推荐:`js:
|
||||
log(input); |
||||
let page=input.split("&")[1].split("=")[1]; |
||||
log(page); |
||||
var json2 = '{"page":"'+page+'","versionName":"5.6.9","uuid":"9cc01079c64e2495","version":"4835d0a2","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
let url="https://cym.zhui.la/api.php/video/index"; |
||||
let jo = posturl(url,json2); |
||||
let vodList = jo.data; |
||||
log(vodList); |
||||
let videos=[]; |
||||
vodList.forEach(function(vod) { |
||||
vod.video.forEach(function(vod1) { |
||||
let aid = (vod1["vod_id"]); |
||||
let title = vod1["vod_name"]; |
||||
let img = vod1["vod_pic"]; |
||||
let remark = vod1["vod_remarks"]; |
||||
videos.push({ |
||||
vod_id: aid, |
||||
vod_name: title, |
||||
vod_pic: img, |
||||
vod_remarks: remark |
||||
}) |
||||
}) |
||||
}) |
||||
|
||||
VODS=videos; |
||||
`,
|
||||
一级:`js:
|
||||
log(input); |
||||
let canshu=input.split("?")[1].split("&"); |
||||
let dd={}; |
||||
canshu.forEach(function(key){ |
||||
log(key); |
||||
let k=key.split("="); |
||||
dd[k[0]]=k[1]; |
||||
}) |
||||
var json2 = '{"type_id":"'+dd["t"]+'","vod_year":"'+dd["year"]+'","limit":"20","orderby":"","vod_area":"'+dd["area"]+'","vod_class":"'+dd["class"]+'","page":"'+dd["page"]+'","versionName":"5.6.9","uuid":"9cc01079c64e2495","version":"4835d0a2","vod_name":"","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
log(json2); |
||||
let url="https://cym.zhui.la/api.php/video/get_list"; |
||||
let jo = posturl(url,json2); |
||||
var d=[]; |
||||
jo.data.list.forEach(function(it){ |
||||
d.push({ |
||||
title:it.vod_name, |
||||
img:it.vod_pic, |
||||
desc:it.vod_remarks, |
||||
url:it.vod_id, |
||||
content:it.vod_blurb}) |
||||
}); |
||||
setResult(d); |
||||
`,
|
||||
二级:`js:
|
||||
log(orId); |
||||
var json2 = '{"vod_id":"'+orId+'","versionName":"5.6.9","uuid":"3899af59c0b12b98","version":"4835d0a2","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
log(json2); |
||||
let url="https://cym.zhui.la/api.php/video/get_detail"; |
||||
let jo = posturl(url,json2); |
||||
let node = jo.data; |
||||
VOD = { |
||||
vod_id: node["vod_id"], |
||||
vod_name: node["vod_name"], |
||||
vod_pic: node["vod_pic"], |
||||
type_name: node["vod_class"], |
||||
vod_year: node["vod_year"], |
||||
vod_area: node["vod_area"], |
||||
vod_remarks: node["vod_remarks"], |
||||
vod_actor: node["vod_actor"], |
||||
vod_director: node["vod_director"], |
||||
vod_content: node["vod_content"] |
||||
}; |
||||
let episodes = node.player; |
||||
let playMap = {}; |
||||
episodes.forEach(function(ep) { |
||||
let playurls = ep["code"]; |
||||
let source = ep["name"]; |
||||
log (playurls); |
||||
log (source); |
||||
//这里分别获取线路
|
||||
var json2 = '{"limit":"5000","vod_id":"'+orId+'","page":"1","versionName":"5.6.9","uuid":"9cc01079c64e2495","version":"4835d0a2","versionCode":"35","player":"'+playurls+'","ctime":"'+getTime()+'"}'; |
||||
log(json2); |
||||
let url="https://cym.zhui.la/api.php/video/get_player"; |
||||
let jo1 = posturl(url,json2); |
||||
jo1.data.list.forEach(function(playurl) { |
||||
if (!playMap.hasOwnProperty(source)) { |
||||
playMap[source] = [] |
||||
} |
||||
playMap[source].append(playurl["drama"]+"$"+playurl["ju_id"]+"&"+playurl["plyer"]+"&"+playurl["video_id"]) |
||||
}) |
||||
}); |
||||
|
||||
let playFrom = []; |
||||
let playList = []; |
||||
|
||||
Object.keys(playMap) |
||||
.forEach(function(key) { |
||||
playFrom.append(key); |
||||
playList.append(playMap[key].join("#")) |
||||
}); |
||||
let vod_play_from = playFrom.join("$$$"); |
||||
let vod_play_url = playList.join("$$$"); |
||||
VOD["vod_play_from"] = vod_play_from; |
||||
VOD["vod_play_url"] = vod_play_url |
||||
`,
|
||||
搜索:`js:
|
||||
let page=input.split("&")[1].split("=")[1]; |
||||
log(page); |
||||
var json2 = '{"vod_year":"","limit":"20","orderby":"up","vod_area":"","vod_class":"","page":"'+page+'","versionName":"5.6.9","uuid":"9cc01079c64e2495","version":"4835d0a2","vod_name":"'+KEY+'","versionCode":"35","ctime":"'+getTime()+'"}'; |
||||
let url="https://cym.zhui.la/api.php/video/get_list"; |
||||
let jo = posturl(url,json2); |
||||
var d=[]; |
||||
jo.data.list.forEach(function(it){ |
||||
d.push({ |
||||
title:it.vod_name, |
||||
img:it.vod_pic, |
||||
desc:it.vod_remarks, |
||||
url:it.vod_id}) |
||||
}); |
||||
setResult(d);`,
|
||||
} |
||||
Loading…
Reference in new issue