Add files via upload
This commit is contained in:
parent
fd8aa40ef4
commit
17af9b7141
73
JN/dr_py/js/script直播[飞].js
Normal file
73
JN/dr_py/js/script直播[飞].js
Normal file
@ -0,0 +1,73 @@
|
||||
var rule = {
|
||||
title: 'script直播[飞]',
|
||||
host: 'https://zh.superchat.live',
|
||||
url: '/girls/fyclass#fypage',
|
||||
searchUrl: '',
|
||||
searchable: 0,
|
||||
quickSearch: 0,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
"User-Agent": "okhttp/3.11.0"
|
||||
},
|
||||
class_name: 'live',
|
||||
class_url: 'chinese',
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
if (/\.(m3u8|mp4)/.test(input)) {
|
||||
input = {parse: 0, url: input}
|
||||
} else {
|
||||
if (rule.parse_url.startsWith('json:')) {
|
||||
let purl = rule.parse_url.replace('json:', '') + input;
|
||||
let html = request(purl);
|
||||
input = {parse: 0, url: JSON.parse(html).url}
|
||||
} else {
|
||||
input = rule.parse_url + input;
|
||||
}
|
||||
}
|
||||
}),
|
||||
limit: 6,
|
||||
推荐: '',
|
||||
double: true,
|
||||
//一级: '.models-list-container&&.model-list-item;img&&alt;img&&src;;a&&href',
|
||||
一级: $js.toString(() => {
|
||||
let html = request('https://zh.stripchatgirls.com/api/front/v2/models?limit=20&topLimit=2000&favoritesLimit=12&primaryTag=girls');
|
||||
let d = [];
|
||||
let blocks = JSON.parse(html).blocks;
|
||||
if (MY_PAGE <= blocks.length) {
|
||||
let list = JSON.parse(html).blocks[MY_PAGE].models;
|
||||
//log('长度'+blocks.length)
|
||||
for (let i in list) {
|
||||
d.push({
|
||||
title: list[i].username,
|
||||
img: list[i].previewUrlThumbBig,
|
||||
url: 'https://b-hls-14.doppiocdn.net/hls/' + list[i].id + '/' + list[i].id + '.m3u8' + '##' + list[i].previewUrlThumbBig + '##' + list[i].username,
|
||||
});
|
||||
}
|
||||
}
|
||||
setResult(d)
|
||||
}),
|
||||
二级: $js.toString(() => {
|
||||
// log(MY_URL)
|
||||
let urls = [];
|
||||
let URL = MY_URL.split('##')[0];
|
||||
let PIC = MY_URL.split('##')[1];
|
||||
let Name = MY_URL.split('##')[2];
|
||||
let url = URL.split('.m3u8')[0];
|
||||
let list1 = ['原画', '720p', '480p', '240p'];
|
||||
let list = [URL, url + '_720p.m3u8', url + '_480p.m3u8', url + '_240p.m3u8'];
|
||||
list.forEach((it, index) => {
|
||||
urls.push(list1[index] + '$' + it);
|
||||
});
|
||||
//log(urls)
|
||||
VOD = {
|
||||
vod_content: URL,
|
||||
vod_name: Name,
|
||||
type_name: Name,
|
||||
vod_pic: PIC,
|
||||
vod_play_from: '直播源↓',
|
||||
//vod_play_url: '点击播放$' + MY_URL,
|
||||
vod_play_url: urls.join('#')
|
||||
};
|
||||
}),
|
||||
搜索: '*',
|
||||
}
|
34
JN/dr_py/js/剧哥哥.js
Normal file
34
JN/dr_py/js/剧哥哥.js
Normal file
@ -0,0 +1,34 @@
|
||||
Object.assign(muban.mxpro.二级, {
|
||||
tab_text: 'div--small&&Text',
|
||||
});
|
||||
var rule = {
|
||||
模板: 'mxpro',
|
||||
title: '剧哥哥',//https://jugege.com/
|
||||
host: 'https://www.jugege.top',
|
||||
class_parse: '.navbar-items li:gt(0):lt(8);a&&Text;a&&href;/(\\d+).html',
|
||||
url: '/vodshow/fyfilter.html',
|
||||
filter_url: '{{fl.cateId}}-{{fl.area}}-{{fl.by}}-{{fl.class}}-----fypage---{{fl.year}}',
|
||||
searchUrl: '/rss/index.xml?wd=**',
|
||||
搜索: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let items = pdfa(html, 'rss&&item');
|
||||
// log(items);
|
||||
let d = [];
|
||||
items.forEach(it => {
|
||||
it = it.replace(/title|link|author|pubdate|description/g, 'p');
|
||||
let url = pdfh(it, 'p:eq(1)&&Text');
|
||||
d.push({
|
||||
title: pdfh(it, 'p&&Text'),
|
||||
url: url,
|
||||
desc: pdfh(it, 'p:eq(3)&&Text'),
|
||||
content: pdfh(it, 'p:eq(2)&&Text'),
|
||||
pic_url: "",
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
}),
|
||||
filter_def: {
|
||||
1: {cateId: '1'}, 2: {cateId: '2'}, 4: {cateId: '4'}, 3: {cateId: '3'}
|
||||
},
|
||||
filter: 'H4sIAAAAAAAAA+2W308aQRDH/5d79sEDf9V/pfGBGpKaWpuAbUIMSSuCoFaEIEpFa1P5oRWB1lo5cvDP3O7Jf9GF3ZlZWnshbR/v7T7f2dmd2dnduQ3DNBafbhgvwjFj0VheDUWjxpSxFnoZFsgyNZ5ICn4TWn0dHo1bG8rJ+iBRH8oCjPiUUotlMV6pCsDmpttqIgKw8XcH/G1R2RTgnDt1xy7DnBJwzlqOdbowpwT0w8AJcL30sWNlYD0JYHtoVNnelbIpwPV2mq4NNgVanG6hS3EOAW2VbYpTAcbSqDq9c4hFAvql8oPSJfhJQL+zKxE5+EmYZD/55rVbzIFNAtoSO3zzA9gkYO7dLEveQ+4SwDY4zfPjirIpwDmL2w8ZC+aUgPn1btzCd2a3IUVkHJG9ePiMVZSAtv0Uy34FmwSsYv9A1ACqKIF2tcxPc7irI0DbVt/9ApkowB2wc263PBbwmBRfGo6UtygUCYe0S1RusT1r0kt0URuUUhCCBNzoaonfN2GjJdBWtXinh1s1Agy9t89ObAhaAhbo2yHZFOA27rbJpgD9jiq8fA1+EjDOj5fkp4CK/oNsCiiWlh5La8zvfYtZVfCTgH5bWbFTLA13hRgzqfTdbMPNlCAZZLrA53y3L9zwDgPjiOSd04VrpUAveiwcimhF79w6XXvCogemAzNKG31qepD0oK4HSA/oukm6qevTpE9ruvkEdfGp6QukL+j6POnzuj5H+pyuz5I+q+uUr6nna1K+pp6vSfmaer4m5Wvq+ZqUr/jUy/QsRkXi+3lmZX8rEj+6GxzdqgnWV8RQmNixLN4qKMvzlfUonbDmFkvDvY0uv4qEh6suTRmB/9VdPd5Cr47m1ZXZzR2zGmCTMGG3+2NX9up2Xl3Z6z336j5iDl6CR1EBlqvzid56BbjeYYo6qIJJ/lY8/zoe69h+X/D7gt8X/L7wS18Ian3BPyL+EXnkiMxoR+RfWseJ7Vj4fkmY5Lnm1zXRFMAmwX/0/BP91yc6/hNlKCPlbBIAAA=='
|
||||
}
|
@ -2,7 +2,11 @@ var rule = {
|
||||
title: '百忙无果[官]',
|
||||
host: 'https://pianku.api.%6d%67%74%76.com',
|
||||
homeUrl: '',
|
||||
searchUrl: 'https://mobileso.bz.%6d%67%74%76.com/pc/search/v1?q=**&pn=fypage&pc=10',
|
||||
// searchUrl: 'https://mobileso.bz.%6d%67%74%76.com/pc/search/v1?q=**&pn=fypage&pc=10',
|
||||
// 新版接口搜索变成v2并且加了验证,蛋疼
|
||||
// searchUrl: 'https://mobileso.bz.mgtv.com/pc/search/v2?allowedRC=1&src=mgtv&did=cf03b959-6945-4cb6-bcb3-88762459354d×tamp=2024-06-21T15%3A52%3A55Z&signVersion=1&signNonce=8dae67a1fafc4bda984ec8deb47666ad&q=**&pn=fypage&pc=10&corr=1&_support=10000000&signature=4e27fddcd2a1a66d6c1764ed6b74bab7',
|
||||
// 用手机的吧,搞不定这个
|
||||
searchUrl: 'https://mobileso.bz.%6d%67%74%76.com/msite/search/v2?q=**&pn=fypage&pc=10',
|
||||
detailUrl: 'https://pcweb.api.mgtv.com/episode/list?page=1&size=50&video_id=fyid',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
@ -131,6 +135,40 @@ var rule = {
|
||||
setResult(d);
|
||||
}),
|
||||
|
||||
// 搜索: $js.toString(() => {
|
||||
// fetch_params.headers.Referer = "https://www.mgtv.com";
|
||||
// fetch_params.headers["User-Agent"] = UA;
|
||||
// let d = [];
|
||||
// let html = request(input);
|
||||
// let json = JSON.parse(html);
|
||||
// json.data.contents.forEach(function (data) {
|
||||
// if (data.data.sourceList || data.data.yearList) {
|
||||
// let list = data.data.sourceList ? data.data.sourceList : data.data.yearList[0].sourceList;
|
||||
// let desc = "";
|
||||
// list.forEach(function (it) {
|
||||
// desc += it.name + "\t"
|
||||
// });
|
||||
// let fyclass = '';
|
||||
// if (list[0].source === "imgo") {
|
||||
// let img = data.data.pic ? data.data.pic : data.data.yearList[0].pic;
|
||||
// try {
|
||||
// fyclass = data.data.desc.find(it => it.label === '类型').url.match(/lib\/(\d+)/)[1] + '$';
|
||||
// } catch (e) {
|
||||
// fyclass = '';
|
||||
// }
|
||||
// log(fyclass);
|
||||
// d.push({
|
||||
// title: data.data.title ? data.data.title : data.data.yearList[0].title,
|
||||
// img: img,
|
||||
// content: data.data.story ? data.data.story : data.data.yearList[0].story,
|
||||
// desc: data.data.playTime,
|
||||
// url: fyclass + list[0].vid
|
||||
// })
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
// setResult(d);
|
||||
// }),
|
||||
搜索: $js.toString(() => {
|
||||
fetch_params.headers.Referer = "https://www.mgtv.com";
|
||||
fetch_params.headers["User-Agent"] = UA;
|
||||
@ -138,27 +176,25 @@ var rule = {
|
||||
let html = request(input);
|
||||
let json = JSON.parse(html);
|
||||
json.data.contents.forEach(function (data) {
|
||||
if (data.data.sourceList || data.data.yearList) {
|
||||
let list = data.data.sourceList ? data.data.sourceList : data.data.yearList[0].sourceList;
|
||||
let desc = "";
|
||||
list.forEach(function (it) {
|
||||
desc += it.name + "\t"
|
||||
});
|
||||
if (data.type && data.type == 'media') {
|
||||
let item = data.data[0];
|
||||
let desc = item.desc.join(',');
|
||||
let fyclass = '';
|
||||
if (list[0].source === "imgo") {
|
||||
let img = data.data.pic ? data.data.pic : data.data.yearList[0].pic;
|
||||
if (item.source === "imgo") {
|
||||
let img = item.img ? item.img : '';
|
||||
try {
|
||||
fyclass = data.data.desc.find(it => it.label === '类型').url.match(/lib\/(\d+)/)[1] + '$';
|
||||
fyclass = item.rpt.match(/idx=(.*?)&/)[1] + '$';
|
||||
} catch (e) {
|
||||
log(e.message);
|
||||
fyclass = '';
|
||||
}
|
||||
log(fyclass);
|
||||
d.push({
|
||||
title: data.data.title ? data.data.title : data.data.yearList[0].title,
|
||||
title: item.title.replace(/<B>|<\/B>/g, ''),
|
||||
img: img,
|
||||
content: data.data.story ? data.data.story : data.data.yearList[0].story,
|
||||
desc: data.data.playTime,
|
||||
url: fyclass + list[0].vid
|
||||
content: '',
|
||||
desc: desc,
|
||||
url: fyclass + item.url.match(/.*\/(.*?)\.html/)[1]
|
||||
})
|
||||
}
|
||||
}
|
||||
|
26
JN/dr_py/js/策驰影院(自动).js
Normal file
26
JN/dr_py/js/策驰影院(自动).js
Normal file
@ -0,0 +1,26 @@
|
||||
var rule = {
|
||||
模板: '自动',
|
||||
title: '策驰影院',
|
||||
host: 'https://www.cecidy.cc',
|
||||
url: '/vodshow/fyclass--------fypage---/',
|
||||
class_parse: '.nav-list&&li;a&&Text;a&&href;/vodtype/(.*?)/',
|
||||
searchUrl: '/rss.xml?wd=**',
|
||||
搜索: $js.toString(() => {
|
||||
let html = post(input.split('?')[0], {body: input.split('?')[1]});
|
||||
let items = pdfa(html, 'rss&&item');
|
||||
// log(items);
|
||||
let d = [];
|
||||
items.forEach(it => {
|
||||
it = it.replace(/title|link|author|pubdate|description/g, 'p');
|
||||
let url = pdfh(it, 'p:eq(1)&&Text');
|
||||
d.push({
|
||||
title: pdfh(it, 'p&&Text'),
|
||||
url: url,
|
||||
desc: pdfh(it, 'p:eq(3)&&Text'),
|
||||
content: pdfh(it, 'p:eq(2)&&Text'),
|
||||
pic_url: "",
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
}),
|
||||
}
|
@ -1,13 +1,14 @@
|
||||
var rule={
|
||||
var rule = {
|
||||
title: '耐看',
|
||||
host: 'https://nkvod.com',
|
||||
url: '/show/fyclass--------fypage---.html',
|
||||
searchUrl: '/nk/-------------.html?wd=**',
|
||||
// searchUrl: '/nk/-------------.html?wd=**',
|
||||
searchUrl: '/index.php/rss/index.xml?wd=**',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
},
|
||||
class_parse: '.navbar&&ul&&li;a&&Text;a&&href;/(\\d+).html',
|
||||
play_parse: false,
|
||||
@ -17,10 +18,30 @@ var rule={
|
||||
double: true,
|
||||
一级: 'a.module-poster-item.module-item;a&&title;img&&data-original;.module-item-note&&Text;a&&href',
|
||||
二级: {
|
||||
"title": "h1&&Text;.module-info-tag&&Text",
|
||||
"img": ".lazyload&&data-original",
|
||||
"desc": ".module-info-item:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(3)&&Text",
|
||||
"content": ".module-info-introduction&&Text",
|
||||
"tabs": ".hisSwiper&&span",
|
||||
"lists": ".his-tab-list:eq(#id) a"},
|
||||
搜索: 'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text',}
|
||||
"title": "h1&&Text;.module-info-tag&&Text",
|
||||
"img": ".lazyload&&data-original",
|
||||
"desc": ".module-info-item:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(3)&&Text",
|
||||
"content": ".module-info-introduction&&Text",
|
||||
"tabs": ".hisSwiper&&span",
|
||||
"lists": ".his-tab-list:eq(#id) a"
|
||||
},
|
||||
// 搜索: 'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text',
|
||||
搜索: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let items = pdfa(html, 'rss&&item');
|
||||
// log(items);
|
||||
let d = [];
|
||||
items.forEach(it => {
|
||||
it = it.replace(/title|link|author|pubdate|description/g, 'p');
|
||||
let url = pdfh(it, 'p:eq(1)&&Text');
|
||||
d.push({
|
||||
title: pdfh(it, 'p&&Text'),
|
||||
url: url,
|
||||
desc: pdfh(it, 'p:eq(3)&&Text'),
|
||||
content: pdfh(it, 'p:eq(2)&&Text'),
|
||||
pic_url: "",
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
}),
|
||||
}
|
28
JN/dr_py/js/西瓜影院.js
Normal file
28
JN/dr_py/js/西瓜影院.js
Normal file
@ -0,0 +1,28 @@
|
||||
Object.assign(muban.首图2.二级, {
|
||||
"tabs": ".nav-tabs&&li",
|
||||
});
|
||||
var rule = {
|
||||
模板: '首图2',
|
||||
title: '西瓜影院',
|
||||
host: 'https://www.xigua1100.com',
|
||||
url: '/show/fyclass--------fypage---.html',
|
||||
searchUrl: '/index.php/rss/index.xml?wd=**',
|
||||
搜索: $js.toString(() => {
|
||||
let html = request(input);
|
||||
let items = pdfa(html, 'rss&&item');
|
||||
// log(items);
|
||||
let d = [];
|
||||
items.forEach(it => {
|
||||
it = it.replace(/title|link|author|pubdate|description/g, 'p');
|
||||
let url = pdfh(it, 'p:eq(1)&&Text');
|
||||
d.push({
|
||||
title: pdfh(it, 'p&&Text'),
|
||||
url: url,
|
||||
desc: pdfh(it, 'p:eq(3)&&Text'),
|
||||
content: pdfh(it, 'p:eq(2)&&Text'),
|
||||
pic_url: "",
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
}),
|
||||
}
|
15
JN/dr_py/js/豆角网.js
Normal file
15
JN/dr_py/js/豆角网.js
Normal file
@ -0,0 +1,15 @@
|
||||
Object.assign(muban.首图2.二级, {
|
||||
img: 'img&&src',
|
||||
tabs: '.stui-pannel__head h4',
|
||||
});
|
||||
var rule = {
|
||||
模板: '首图2',
|
||||
title: '豆角网',
|
||||
host: 'https://www.dongkandi.com',
|
||||
url: '/index.php/vod/show/id/fyclass/page/fypage.html',
|
||||
searchUrl: '/index.php/vod/search/page/fypage/wd/**.html',
|
||||
class_parse: '.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html',
|
||||
推荐: 'ul.stui-vodlist.clearfix;li;a&&title;img&&src;.pic-text&&Text;a&&href',
|
||||
一级: '.stui-vodlist li;a&&title;img&&src;.pic-text&&Text;a&&href',
|
||||
搜索: 'ul.stui-vodlist__media:eq(0),ul.stui-vodlist:eq(0),#searchList li;a&&title;img&&src;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text',
|
||||
}
|
@ -1,10 +1,13 @@
|
||||
/**
|
||||
* 强烈推荐静态分类。可以加快速度!!!
|
||||
* 传参 ?type=url¶ms=../json/采集.json
|
||||
* 传参 ?type=url¶ms=../json/采集静态.json
|
||||
* [{"name":"暴风资源","url":"https://bfzyapi.com","parse_url":""},{"name":"飞刀资源","url":"http://www.feidaozy.com","parse_url":""},{"name":"黑木耳资源","url":"https://www.heimuer.tv","parse_url":""}]
|
||||
*/
|
||||
var rule = {
|
||||
title: '采集之王[合]',
|
||||
author: '道长',
|
||||
version: '20240621 beta6',
|
||||
host: '',
|
||||
homeTid: '', // 首页推荐。一般填写第一个资源站的想要的推荐分类的id.可以空
|
||||
homeUrl: '/api.php/provide/vod/?ac=detail&t={{rule.homeTid}}',
|
||||
@ -16,15 +19,44 @@ var rule = {
|
||||
headers: {'User-Agent': 'MOBILE_UA'},
|
||||
timeout: 5000, // class_name: '电影&电视剧&综艺&动漫',
|
||||
limit: 20,
|
||||
search_limit: 5, // 搜索限制取前5个,可以注释掉,就不限制搜索
|
||||
searchable: 1,//是否启用全局搜索,
|
||||
quickSearch: 0,//是否启用快速搜索,
|
||||
filterable: 1,//是否启用分类筛选,
|
||||
play_parse: true,
|
||||
parse_url: '', // 这个参数暂时不起作用。聚合类的每个资源应该有自己独立的解析口
|
||||
parse_url: '', // 这个参数暂时不起作用。聚合类的每个资源应该有自己独立的解析口。单独配置在采集.json里的parse_url有效
|
||||
// params: 'http://127.0.0.1:5707/files/json/%E9%87%87%E9%9B%86.json',
|
||||
// params: 'http://127.0.0.1:5707/files/json/采集静态.json',
|
||||
// hostJs:$js.toString(()=>{
|
||||
//
|
||||
// }),
|
||||
预处理: $js.toString(() => {
|
||||
function getClasses(item) {
|
||||
let classes = [];
|
||||
if (item.class_name && item.class_url) {
|
||||
if (!/&|电影|电视剧|综艺|动漫[\u4E00-\u9FA5]+/.test(item.class_name)) {
|
||||
try {
|
||||
item.class_name = ungzip(item.class_name)
|
||||
} catch (e) {
|
||||
log(`不识别的class_name导致gzip解码失败:${e}`)
|
||||
return classes
|
||||
}
|
||||
}
|
||||
let names = item.class_name.split('&');
|
||||
let urls = item.class_url.split('&');
|
||||
let cnt = Math.min(names.length, urls.length);
|
||||
for (let i = 0; i < cnt; i++) {
|
||||
classes.push({
|
||||
'type_id': urls[i],
|
||||
'type_name': names[i]
|
||||
});
|
||||
}
|
||||
}
|
||||
return classes
|
||||
}
|
||||
|
||||
let _url = rule.params;
|
||||
if (_url && typeof (_url) === 'string' && _url.startsWith('http')) {
|
||||
if (_url && typeof (_url) === 'string' && /^(http|file)/.test(_url)) {
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
let _classes = [];
|
||||
@ -35,11 +67,19 @@ var rule = {
|
||||
type_name: it.name,
|
||||
type_id: it.url,
|
||||
parse_url: it.parse_url || '',
|
||||
api: it.api || '',
|
||||
cate_exclude: it.cate_exclude || '',
|
||||
// class_name: it.class_name || '',
|
||||
// class_url: it.class_url || '',
|
||||
};
|
||||
_classes.push(_obj);
|
||||
try {
|
||||
let json1 = JSON.parse(request(urljoin(_obj.type_id, rule.classUrl))).class;
|
||||
let json1 = [];
|
||||
if (it.class_name && it.class_url) {
|
||||
json1 = getClasses(it);
|
||||
} else {
|
||||
json1 = JSON.parse(request(urljoin(_obj.type_id, _obj.api || rule.classUrl))).class;
|
||||
}
|
||||
if (_obj.cate_exclude) {
|
||||
json1 = json1.filter(cl => !new RegExp(_obj.cate_exclude, 'i').test(cl.type_name));
|
||||
}
|
||||
@ -99,14 +139,21 @@ var rule = {
|
||||
input = rule.classes;
|
||||
}),
|
||||
推荐: $js.toString(() => {
|
||||
VODS = [];
|
||||
if (rule.classes) {
|
||||
let _url = urljoin(rule.classes[0].type_id, input);
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
VODS = json.list;
|
||||
VODS.forEach(it => {
|
||||
it.vod_id = rule.classes[0].type_id + '$' + it.vod_id
|
||||
});
|
||||
if (rule.classes[0].api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', rule.classes[0].api)
|
||||
}
|
||||
try {
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
VODS = json.list;
|
||||
VODS.forEach(it => {
|
||||
it.vod_id = rule.classes[0].type_id + '$' + it.vod_id
|
||||
});
|
||||
} catch (e) {
|
||||
}
|
||||
}
|
||||
}),
|
||||
一级: $js.toString(() => {
|
||||
@ -114,6 +161,10 @@ var rule = {
|
||||
if (rule.classes) {
|
||||
// log(input);
|
||||
let _url = urljoin(MY_CATE, input);
|
||||
let current_vod = rule.classes.find(item => item.type_id === MY_CATE);
|
||||
if (current_vod && current_vod.api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', current_vod.api)
|
||||
}
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
VODS = json.list;
|
||||
@ -127,24 +178,36 @@ var rule = {
|
||||
VOD = [];
|
||||
if (rule.classes) {
|
||||
let _url = urljoin(fyclass, input);
|
||||
let current_vod = rule.classes.find(item => item.type_id === fyclass);
|
||||
if (current_vod && current_vod.api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', current_vod.api)
|
||||
}
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
let data = json.list;
|
||||
VOD = data[0];
|
||||
if (current_vod && current_vod.type_name) {
|
||||
VOD.vod_play_from = VOD.vod_play_from.split('$$$').map(it => current_vod.type_name + '|' + it).join('$$$')
|
||||
}
|
||||
}
|
||||
}),
|
||||
搜索: $js.toString(() => {
|
||||
VODS = [];
|
||||
if (rule.classes) {
|
||||
rule.classes.forEach(it => {
|
||||
let search_classes = rule.search_limit?rule.classes.slice(0, rule.search_limit):rule.classes;
|
||||
search_classes.forEach(it => {
|
||||
let _url = urljoin(it.type_id, input);
|
||||
if (it.api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', it.api)
|
||||
}
|
||||
// log(_url);
|
||||
try {
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
let data = json.list;
|
||||
data.forEach(i => {
|
||||
i.vod_id = it.type_id + '$' + i.vod_id
|
||||
i.vod_id = it.type_id + '$' + i.vod_id;
|
||||
i.vod_remarks = i.vod_remarks + '|' + it.type_name;
|
||||
});
|
||||
VODS = VODS.concat(data);
|
||||
} catch (e) {
|
||||
@ -156,15 +219,23 @@ var rule = {
|
||||
}),
|
||||
lazy: $js.toString(() => {
|
||||
// lazy想办法用对应的parse_url,但是有难度,暂未实现
|
||||
let parse_url = '';
|
||||
if (flag && flag.includes('|')) {
|
||||
let type_name = flag.split('|')[0];
|
||||
let current_vod = rule.classes.find(item => item.type_name === type_name);
|
||||
if (current_vod && current_vod.parse_url) {
|
||||
parse_url = current_vod.parse_url
|
||||
}
|
||||
}
|
||||
if (/\.(m3u8|mp4)/.test(input)) {
|
||||
input = {parse: 0, url: input}
|
||||
} else {
|
||||
if (rule.parse_url.startsWith('json:')) {
|
||||
let purl = rule.parse_url.replace('json:', '') + input;
|
||||
if (parse_url.startsWith('json:')) {
|
||||
let purl = parse_url.replace('json:', '') + input;
|
||||
let html = request(purl);
|
||||
input = {parse: 0, url: JSON.parse(html).url}
|
||||
} else {
|
||||
input = rule.parse_url + input;
|
||||
input = parse_url + input;
|
||||
}
|
||||
}
|
||||
}),
|
||||
|
Loading…
x
Reference in New Issue
Block a user