Add files via upload
This commit is contained in:
parent
65a6872fcc
commit
199a092cb5
@ -1,29 +1,60 @@
|
|||||||
var rule = {
|
var rule = {
|
||||||
title:'88看球',
|
title: "88看球",
|
||||||
// host:'http://www.88kanqiu.cc',
|
// host:'http://www.88kanqiu.cc',
|
||||||
host:'http://www.88kanqiu.live',
|
host: "http://www.88kanqiu.live",
|
||||||
url:'/match/fyclass/live',
|
url: "/match/fyclass/live",
|
||||||
searchUrl:'',
|
searchUrl: "",
|
||||||
searchable:0,
|
searchable: 0,
|
||||||
quickSearch:0,
|
quickSearch: 0,
|
||||||
class_parse:'.nav-pills li;a&&Text;a&&href;/match/(\\d+)/live',
|
class_parse: ".nav-pills li;a&&Text;a&&href;/match/(\\d+)/live",
|
||||||
headers:{
|
headers: {
|
||||||
'User-Agent':'PC_UA'
|
"User-Agent": "PC_UA",
|
||||||
},
|
},
|
||||||
timeout:5000,
|
timeout: 5000,
|
||||||
play_parse:true,
|
play_parse: true,
|
||||||
lazy:'',
|
pagecount:{"1":1,"2":1,"4":1,"22":1,"8":1,"9":1,"10":1,"14":1,"15":1,"12":1,"13":1,"16":1,"28":1,"7":1,"11":1,"33":1,"27":1,"23":1,"26":1,"3":1,"21":1,"18":1},
|
||||||
limit:6,
|
lazy: `js:
|
||||||
double:false,
|
if(/embed=/.test(input)) {
|
||||||
推荐:'*',
|
let url = input.match(/embed=(.*?)&/)[1];
|
||||||
一级:'.list-group .group-game-item;.d-none&&Text;img&&src;.btn&&Text;a&&href',
|
url = base64Decode(url);
|
||||||
二级:{
|
input = {
|
||||||
"title":".game-info-container&&Text;.customer-navbar-nav li&&Text",
|
jx:0,
|
||||||
"img":"img&&src",
|
url: url.split('#')[0],
|
||||||
"desc":";;;div.team-name:eq(0)&&Text;div.team-name:eq(1)&&Text",
|
parse: 0
|
||||||
"content":"div.game-time&&Text",
|
}
|
||||||
"tabs":"js:TABS=['88看球']",
|
} else if (/\\?url=/.test(input)){
|
||||||
"lists":"js:LISTS=[];input=input+'-url';let html=request(input);let data=JSON.parse(html);TABS.forEach(function(tab){let m3u=data.links;let d=m3u.map(function(it){return it.name+'$'+it.url});LISTS.push(d)});"
|
input = {
|
||||||
},
|
jx:0,
|
||||||
搜索:'',
|
url: input.split('?url=')[1].split('#')[0],
|
||||||
}
|
parse: 0
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
input
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
limit: 6,
|
||||||
|
double: false,
|
||||||
|
推荐: "*",
|
||||||
|
一级: ".list-group .group-game-item;.d-none&&Text;img&&src;.btn&&Text;a&&href",
|
||||||
|
二级: {
|
||||||
|
title: ".game-info-container&&Text;.customer-navbar-nav li&&Text",
|
||||||
|
img: "img&&src",
|
||||||
|
desc: ";;;div.team-name:eq(0)&&Text;div.team-name:eq(1)&&Text",
|
||||||
|
content: "div.game-time&&Text",
|
||||||
|
tabs: "js:TABS=['道长在线']",
|
||||||
|
lists: `js:
|
||||||
|
LISTS=[];
|
||||||
|
let html = request(input);
|
||||||
|
let pdata = jsp.pdfh(html, "#t&&value");
|
||||||
|
pdata = pdata.substring(6, pdata.length);
|
||||||
|
pdata = pdata.substring(0, (pdata.length) - 2)
|
||||||
|
pdata = base64Decode(pdata);
|
||||||
|
let jo = JSON.parse(pdata).links;
|
||||||
|
let d = jo.map(function(it){
|
||||||
|
return it.name + '$' + urlencode(it.url)
|
||||||
|
});
|
||||||
|
LISTS.push(d)
|
||||||
|
`,
|
||||||
|
},
|
||||||
|
搜索: "",
|
||||||
|
};
|
@ -99,7 +99,6 @@ var rule = {
|
|||||||
`,
|
`,
|
||||||
二级: `js:
|
二级: `js:
|
||||||
try {
|
try {
|
||||||
var d = [];
|
|
||||||
if (typeof play_url === "undefined") {
|
if (typeof play_url === "undefined") {
|
||||||
var play_url = ""
|
var play_url = ""
|
||||||
}
|
}
|
||||||
@ -112,8 +111,7 @@ var rule = {
|
|||||||
vod_name: jo.roomName,
|
vod_name: jo.roomName,
|
||||||
vod_pic: jo.roomPic,
|
vod_pic: jo.roomPic,
|
||||||
type_name: jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "." + jo.categoryName,
|
type_name: jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "." + jo.categoryName,
|
||||||
vod_director: '👥人气 ' + jo.online,
|
vod_director: '🆙 ' + jo.ownerName,
|
||||||
vod_actor: '🆙 ' + jo.ownerName,
|
|
||||||
vod_content: "🏷分区:" + jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "·" + jo.categoryName + " 🏷UP主:" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播")
|
vod_content: "🏷分区:" + jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "·" + jo.categoryName + " 🏷UP主:" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播")
|
||||||
};
|
};
|
||||||
let episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrlMultiSource?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //多线路
|
let episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrlMultiSource?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //多线路
|
||||||
@ -161,29 +159,33 @@ var rule = {
|
|||||||
});
|
});
|
||||||
d.push(
|
d.push(
|
||||||
{
|
{
|
||||||
title: "虎牙解析1",
|
title: "解析1",
|
||||||
url: "http://epg.112114.xyz/huya/" + jo.roomId
|
url: "http://epg.112114.xyz/huya/" + jo.roomId
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "虎牙解析2",
|
title: "解析2",
|
||||||
url: "https://www.aois.eu.org/live/huya/" + jo.roomId
|
url: "https://www.aois.eu.org/live/huya/" + jo.roomId
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "虎牙解析3",
|
title: "解析3",
|
||||||
url: "https://www.goodiptv.club/huya/" + jo.roomId
|
url: "https://www.goodiptv.club/huya/" + jo.roomId
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "虎牙解析4",
|
title: "解析4",
|
||||||
url: "http://maomao.kandiantv.cn/huya1.php?id=" + jo.roomId
|
url: "http://maomao.kandiantv.cn/huya1.php?id=" + jo.roomId
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "虎牙解析5",
|
title: "解析5",
|
||||||
url: "http://43.138.170.29:35455/huya/" + jo.roomId
|
url: "http://43.138.170.29:35455/huya/" + jo.roomId
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "虎牙解析6",
|
title: "解析6",
|
||||||
url: "http://8.210.232.168/php/huya.php?id=" + jo.roomId
|
url: "http://8.210.232.168/php/huya.php?id=" + jo.roomId
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: "虎牙解析",
|
||||||
|
url: "http://cfss.cc/cdn/hy/" + jo.roomId + ".flv"
|
||||||
|
},
|
||||||
);
|
);
|
||||||
VOD["vod_play_from"] = "选择画质";
|
VOD["vod_play_from"] = "选择画质";
|
||||||
VOD["vod_play_url"] = d.map(function(it) {
|
VOD["vod_play_url"] = d.map(function(it) {
|
||||||
@ -208,4 +210,18 @@ var rule = {
|
|||||||
})
|
})
|
||||||
setResult(d);
|
setResult(d);
|
||||||
`,
|
`,
|
||||||
|
|
||||||
|
//是否启用辅助嗅探: 1,0
|
||||||
|
sniffer:1,
|
||||||
|
// 辅助嗅探规则js写法
|
||||||
|
isVideo: `js:
|
||||||
|
log(input);
|
||||||
|
if(/\\/huya/.test(input)) {
|
||||||
|
input = true
|
||||||
|
} else if(/\\.flv?|\\.m3u8?|\\.mp4?/.test(input)){
|
||||||
|
input = true
|
||||||
|
}else{
|
||||||
|
input = false
|
||||||
|
}
|
||||||
|
`,
|
||||||
}
|
}
|
@ -50,7 +50,7 @@ var rule = {
|
|||||||
url: it.rid,
|
url: it.rid,
|
||||||
title: it.roomName,
|
title: it.roomName,
|
||||||
img: it.roomSrc,
|
img: it.roomSrc,
|
||||||
desc: '👁' + it.hn + ' ' + '🆙' + it.nickname,
|
desc: '👁' + it.hn + ' 🆙' + it.nickname,
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -64,67 +64,135 @@ var rule = {
|
|||||||
url: it.rid,
|
url: it.rid,
|
||||||
title: it.roomName,
|
title: it.roomName,
|
||||||
img: it.roomSrc,
|
img: it.roomSrc,
|
||||||
desc: '👁' + it.hn + ' ' + '🆙' + it.nickname,
|
desc: '👁' + it.hn + ' 🆙' + it.nickname,
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
setResult(d);
|
setResult(d);
|
||||||
`,
|
`,
|
||||||
二级:`js:
|
二级:`js:
|
||||||
var d = [];
|
try {
|
||||||
|
if (typeof play_url === "undefined") {
|
||||||
|
var play_url = ""
|
||||||
|
}
|
||||||
var jo = JSON.parse(request(input)).data;
|
var jo = JSON.parse(request(input)).data;
|
||||||
VOD = {
|
VOD = {
|
||||||
vod_id: jo.roomId,
|
vod_id: jo.roomId,
|
||||||
vod_name: jo.roomName,
|
vod_name: jo.roomName,
|
||||||
vod_pic: jo.roomPic,
|
vod_pic: jo.roomPic,
|
||||||
type_name: jo.platForm.replace("douyu", "斗鱼") + "." + jo.categoryName,
|
type_name: "斗鱼." + jo.categoryName,
|
||||||
vod_remarks: '🏷roomId ' + jo.roomId,
|
vod_director: '🆙 ' + jo.ownerName,
|
||||||
vod_director: '👥在线人数 ' + jo.online,
|
vod_content: "🏷分区:斗鱼" + "·" + jo.categoryName + " 🏷UP主:" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播")
|
||||||
vod_actor: '🆙 ' + jo.ownerName,
|
|
||||||
vod_content: '🏷roomId:' + jo.roomId + "|" + ' 🏷状态:' + (jo.isLive == 1 ? '正在直播' : '未开播'),
|
|
||||||
// vod_content: "🏷分区:" + jo.platForm.replace("douyu", "斗鱼") + "·" + jo.categoryName + " 🏷UP主:" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播"),
|
|
||||||
};
|
};
|
||||||
var playurl = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrl?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data;
|
let episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrlMultiSource?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //多线路
|
||||||
// var name = {
|
if (Object.keys(episodes).length !== 0) {
|
||||||
// OD: "JustLive",
|
let playFrom = [];
|
||||||
// FD: "流畅",
|
let playList = [];
|
||||||
// LD: "标清",
|
let kplayList = [];
|
||||||
// SD: "高清",
|
Object.keys(episodes).forEach(function(key) {
|
||||||
// HD: "JustLive(预览)",
|
playFrom.append(key);
|
||||||
// "2K": "2K",
|
kplayList = episodes[key].map(function(it) {
|
||||||
// "4K": "4K",
|
let title = it.qualityName;
|
||||||
// FHD: "全高清",
|
let playUrl = it.playUrl
|
||||||
// XLD: "极速",
|
return title + "$" + play_url + urlencode(playUrl)
|
||||||
// SQ: "普通音质",
|
}).join("#")
|
||||||
// HQ: "高音质",
|
playList.append(kplayList);
|
||||||
// };
|
});
|
||||||
Object.keys(playurl).forEach(function(key) {
|
let vod_play_from = playFrom.join("$$$");
|
||||||
// if (!/ayyuid|to/.test(key)) {
|
let vod_play_url = playList.join("$$$");
|
||||||
if (/OD/.test(key)) {
|
VOD["vod_play_from"] = vod_play_from;
|
||||||
d.push({
|
VOD["vod_play_url"] = vod_play_url;
|
||||||
// title: name[key],
|
} else {
|
||||||
title: 'JustLive',
|
var d = [];
|
||||||
url: playurl[key]
|
episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrl?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //单线路
|
||||||
})
|
var name = {
|
||||||
}
|
"OD": "原画",
|
||||||
|
"FD": "流畅",
|
||||||
|
"LD": "标清",
|
||||||
|
"SD": "高清",
|
||||||
|
"HD": "超清",
|
||||||
|
"2K": "2K",
|
||||||
|
"4K": "4K",
|
||||||
|
"FHD": "全高清",
|
||||||
|
"XLD": "极速",
|
||||||
|
"SQ": "普通音质",
|
||||||
|
"HQ": "高音质"
|
||||||
|
};
|
||||||
|
Object.keys(episodes).forEach(function(key) {
|
||||||
|
if (!/ayyuid|to/.test(key)) {
|
||||||
|
d.push({
|
||||||
|
title: name[key],
|
||||||
|
url: episodes[key]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
d.push(
|
||||||
|
{
|
||||||
|
title: "解析1",
|
||||||
|
url: "http://epg.112114.xyz/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析2",
|
||||||
|
url: "https://www.aois.eu.org/live/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析3",
|
||||||
|
url: "https://www.goodiptv.club/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析4",
|
||||||
|
url: "http://maomao.kandiantv.cn/huya1.php?id=" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析5",
|
||||||
|
url: "http://43.138.170.29:35455/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析6",
|
||||||
|
url: "http://8.210.232.168/php/huya.php?id=" + jo.roomId
|
||||||
|
},
|
||||||
|
);
|
||||||
|
VOD["vod_play_from"] = "播放源";
|
||||||
|
VOD["vod_play_url"] = d.map(function(it) {
|
||||||
|
return it.title + "$" + it.url
|
||||||
|
}).join("#");
|
||||||
|
setResult(d);
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
log("获取二级详情页发生错误:" + e.message);
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
// 搜索:'json:data.list;roomName;roomSrc;nickname;roomId',
|
||||||
|
搜索: `js:
|
||||||
|
var d = [];
|
||||||
|
let rurls = input.split(';')[0].split('#');
|
||||||
|
let rurl = rurls[0];
|
||||||
|
let params = rurls.length > 1 ?rurls[1]:'';
|
||||||
|
let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
|
||||||
|
let postData = {body:params};
|
||||||
|
Object.assign(_fetch_params,postData);
|
||||||
|
let jo = JSON.parse(post(rurl,_fetch_params)).data.list;
|
||||||
|
jo.forEach(it => {
|
||||||
|
d.push({
|
||||||
|
url: it.roomId,
|
||||||
|
title: it.roomName,
|
||||||
|
img: it.roomSrc,
|
||||||
|
desc: '👁' + it.hn + ' 🆙' + it.nickname,
|
||||||
|
})
|
||||||
});
|
});
|
||||||
d.push({
|
|
||||||
title: "斗鱼解析1",
|
|
||||||
url: "http://epg.112114.xyz/douyu/" + jo.roomId
|
|
||||||
}, {
|
|
||||||
title: "斗鱼解析2",
|
|
||||||
url: "https://www.aois.eu.org/live/douyu/" + jo.roomId
|
|
||||||
}, {
|
|
||||||
title: "斗鱼解析3",
|
|
||||||
url: "https://www.goodiptv.club/douyu/" + jo.roomId
|
|
||||||
}, {
|
|
||||||
title: "斗鱼解析4",
|
|
||||||
url: "http://maomao.kandiantv.cn/douyu1.php?id=" + jo.roomId
|
|
||||||
});
|
|
||||||
VOD.vod_play_from = "播放源";
|
|
||||||
VOD.vod_play_url = d.map(function(it) {
|
|
||||||
return it.title + "$" + it.url
|
|
||||||
}).join("#");
|
|
||||||
setResult(d);
|
setResult(d);
|
||||||
`,
|
`,
|
||||||
搜索:'json:data.list;roomName;roomSrc;nickname;roomId',
|
|
||||||
|
//是否启用辅助嗅探: 1,0
|
||||||
|
sniffer:1,
|
||||||
|
// 辅助嗅探规则js写法
|
||||||
|
isVideo: `js:
|
||||||
|
log(input);
|
||||||
|
if(/\\/huya/.test(input)) {
|
||||||
|
input = true
|
||||||
|
} else if(/\\.flv?|\\.m3u8?|\\.mp4?/.test(input)){
|
||||||
|
input = true
|
||||||
|
}else{
|
||||||
|
input = false
|
||||||
|
}
|
||||||
|
`,
|
||||||
}
|
}
|
||||||
|
@ -53,14 +53,15 @@
|
|||||||
url = url.substring(8, (url.length) - 8)
|
url = url.substring(8, (url.length) - 8)
|
||||||
}
|
}
|
||||||
if (/\\.m3u8|\\.mp4/.test(url)) {
|
if (/\\.m3u8|\\.mp4/.test(url)) {
|
||||||
var sign = request(HOST + '/static/player/' + from + '.php').match(/PlayUrl\\+'(.*?)'/)[1];
|
// var sign = request(HOST + '/static/player/' + from + '.php').match(/PlayUrl\\+'(.*?)'/)[1];
|
||||||
input = {
|
input = {
|
||||||
jx: 0,
|
jx: 0,
|
||||||
url: url+sign,
|
// url: url+sign,
|
||||||
|
url: url,
|
||||||
parse: 0,
|
parse: 0,
|
||||||
header: JSON.stringify({
|
header: JSON.stringify({
|
||||||
"referer": HOST,
|
// "referer": HOST,
|
||||||
// 'referer': HOST + "/static/player/vidjs.html",
|
'referer': HOST + "/static/player/vidjs.html",
|
||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -5,7 +5,8 @@ var rule = {
|
|||||||
url:'/cache.php?m=LiveList&do=getLiveListByPage&gameId=fyfilter&tagAll=0&page=fypage',
|
url:'/cache.php?m=LiveList&do=getLiveListByPage&gameId=fyfilter&tagAll=0&page=fypage',
|
||||||
class_name:'娱乐&网游&单机&手游',
|
class_name:'娱乐&网游&单机&手游',
|
||||||
class_url:'8&1&2&3',
|
class_url:'8&1&2&3',
|
||||||
detailUrl:'https://m.huya.com/fyid',//二级详情拼接链接(json格式用)
|
// detailUrl:'https://m.huya.com/fyid',//二级详情拼接链接(json格式用)
|
||||||
|
detailUrl:'http://live.yj1211.work/api/live/getRoomInfo?uid=&platform=huya&roomId=fyid',//二级详情拼接链接(json格式用)
|
||||||
filterable: 1,
|
filterable: 1,
|
||||||
filter_url: '{{fl.cateId}}',
|
filter_url: '{{fl.cateId}}',
|
||||||
filter_def:{
|
filter_def:{
|
||||||
@ -29,42 +30,10 @@ var rule = {
|
|||||||
timeout:5000,
|
timeout:5000,
|
||||||
limit:8,
|
limit:8,
|
||||||
play_parse:true,
|
play_parse:true,
|
||||||
|
lazy:'',
|
||||||
lazy:`js:
|
lazy:`js:
|
||||||
let rid = input.match(/\\/ (\\d + ) / )[1];
|
if (/m\\.huya/.test(input)) {
|
||||||
function getRealUrl(live_url) {
|
rule.sniffer = 0
|
||||||
let [i, b] = live_url.split('?');
|
|
||||||
let r = i.split('/').pop();
|
|
||||||
let s = r.replace(/\.(flv|m3u8)/, '');
|
|
||||||
let c_tmp = b.split('&').filter(n => n);
|
|
||||||
let n = {};
|
|
||||||
let c_tmp2 = [];
|
|
||||||
c_tmp.forEach(function(tmp, index) {
|
|
||||||
if (index < 3) {
|
|
||||||
n[tmp.split('=')[0]] = tmp.split('=')[1]
|
|
||||||
} else {
|
|
||||||
c_tmp2.push(tmp)
|
|
||||||
}
|
|
||||||
});
|
|
||||||
let tmp2 = c_tmp2.join('&');
|
|
||||||
n[tmp2.split('=')[0]] = tmp2.split('=')[1];
|
|
||||||
let fm = decodeURIComponent(n.fm).split('&')[0];
|
|
||||||
let u = base64Decode(fm);
|
|
||||||
let p = u.split('_')[0];
|
|
||||||
let f = new Date().getTime() + '0000';
|
|
||||||
let ll = n.wsTime;
|
|
||||||
let t = '0';
|
|
||||||
let h = [p, t, s, f, ll].join('_');
|
|
||||||
let m = md5(h);
|
|
||||||
return (i + '?wsSecret=' + m + '&wsTime=' + ll + '&u=' + t + '&seqid=' + f + '&' + c_tmp2.pop()).replace('hls', 'flv').replace('m3u8', 'flv')
|
|
||||||
}
|
|
||||||
let purl = JSON.parse(request('https://mp.huya.com/cache.php?m=Live&do=profileRoom&roomid=' + rid)).data.stream.flv.multiLine[0].url;
|
|
||||||
input = {
|
|
||||||
jx: 0,
|
|
||||||
url: getRealUrl(purl),
|
|
||||||
parse: 0,
|
|
||||||
header: JSON.stringify({
|
|
||||||
'user-agent': 'Mozilla/5.0'
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
`,
|
`,
|
||||||
推荐:`js:
|
推荐:`js:
|
||||||
@ -93,6 +62,133 @@ var rule = {
|
|||||||
});
|
});
|
||||||
setResult(d);
|
setResult(d);
|
||||||
`,
|
`,
|
||||||
二级:'*',
|
// 二级:'*',
|
||||||
搜索:'json:response.3.docs;game_roomName;game_screenshot;game_nick;room_id',
|
二级: `js:
|
||||||
|
try {
|
||||||
|
if (typeof play_url === "undefined") {
|
||||||
|
var play_url = ""
|
||||||
|
}
|
||||||
|
var jo = JSON.parse(request(input)).data;
|
||||||
|
VOD = {
|
||||||
|
vod_id: jo.roomId,
|
||||||
|
vod_name: jo.roomName,
|
||||||
|
vod_pic: jo.roomPic,
|
||||||
|
type_name: "虎牙." + jo.categoryName,
|
||||||
|
vod_director: '🆙 ' + jo.ownerName,
|
||||||
|
vod_content: "🏷分区:虎牙" + "·" + jo.categoryName + " 🏷UP主:" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播")
|
||||||
|
};
|
||||||
|
let episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrlMultiSource?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //多线路
|
||||||
|
if (Object.keys(episodes).length !== 0) {
|
||||||
|
let playFrom = [];
|
||||||
|
let playList = [];
|
||||||
|
let kplayList = [];
|
||||||
|
Object.keys(episodes).forEach(function(key) {
|
||||||
|
playFrom.append(key);
|
||||||
|
kplayList = episodes[key].map(function(it) {
|
||||||
|
let title = it.qualityName;
|
||||||
|
let playUrl = it.playUrl
|
||||||
|
return title + "$" + play_url + urlencode(playUrl)
|
||||||
|
}).join("#")
|
||||||
|
playList.append(kplayList);
|
||||||
|
});
|
||||||
|
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;
|
||||||
|
} else {
|
||||||
|
var d = [];
|
||||||
|
episodes = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrl?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data; //单线路
|
||||||
|
var name = {
|
||||||
|
"OD": "原画",
|
||||||
|
"FD": "流畅",
|
||||||
|
"LD": "标清",
|
||||||
|
"SD": "高清",
|
||||||
|
"HD": "超清",
|
||||||
|
"2K": "2K",
|
||||||
|
"4K": "4K",
|
||||||
|
"FHD": "全高清",
|
||||||
|
"XLD": "极速",
|
||||||
|
"SQ": "普通音质",
|
||||||
|
"HQ": "高音质"
|
||||||
|
};
|
||||||
|
Object.keys(episodes).forEach(function(key) {
|
||||||
|
if (!/ayyuid|to/.test(key)) {
|
||||||
|
d.push({
|
||||||
|
title: name[key],
|
||||||
|
url: episodes[key]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
d.push(
|
||||||
|
{
|
||||||
|
title: "虎牙解析",
|
||||||
|
url: "http://cfss.cc/cdn/hy/" + jo.roomId + ".flv"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析1",
|
||||||
|
url: "http://epg.112114.xyz/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析2",
|
||||||
|
url: "https://www.aois.eu.org/live/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析3",
|
||||||
|
url: "https://www.goodiptv.club/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析4",
|
||||||
|
url: "http://maomao.kandiantv.cn/huya1.php?id=" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析5",
|
||||||
|
url: "http://43.138.170.29:35455/huya/" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "解析6",
|
||||||
|
url: "http://8.210.232.168/php/huya.php?id=" + jo.roomId
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "原址嗅探",
|
||||||
|
url: "https://m.huya.com/" + jo.roomId
|
||||||
|
},
|
||||||
|
);
|
||||||
|
VOD["vod_play_from"] = "播放源";
|
||||||
|
VOD["vod_play_url"] = d.map(function(it) {
|
||||||
|
return it.title + "$" + it.url
|
||||||
|
}).join("#");
|
||||||
|
setResult(d);
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
log("获取二级详情页发生错误:" + e.message);
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
// 搜索:'json:response.3.docs;game_roomName;game_screenshot;game_nick;room_id',
|
||||||
|
搜索: `js:
|
||||||
|
var d = [];
|
||||||
|
let jo = JSON.parse(request(input)).response[3].docs;
|
||||||
|
jo.forEach(it => {
|
||||||
|
d.push({
|
||||||
|
url: it.room_id,
|
||||||
|
title: it.game_roomName,
|
||||||
|
img: it.game_screenshot,
|
||||||
|
desc: '👁' + it.game_total_count + ' 🆙' + it.game_nick,
|
||||||
|
})
|
||||||
|
});
|
||||||
|
setResult(d);
|
||||||
|
`,
|
||||||
|
|
||||||
|
//是否启用辅助嗅探: 1,0
|
||||||
|
sniffer:1,
|
||||||
|
// 辅助嗅探规则js写法
|
||||||
|
isVideo: `js:
|
||||||
|
log(input);
|
||||||
|
if(/\\/huya/.test(input)) {
|
||||||
|
input = true
|
||||||
|
} else if(/\\.flv?|\\.m3u8?|\\.mp4?/.test(input)){
|
||||||
|
input = true
|
||||||
|
}else{
|
||||||
|
input = false
|
||||||
|
}
|
||||||
|
`,
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user