mirror of
https://github.com/ls125781003/tvboxtg.git
synced 2026-11-03 10:12:14 +00:00
20250624
This commit is contained in:
1 parent
645cb0f8e1
commit
edec9033cf
180 files changed
+58735
-69206
No files matched your search
BIN
Binary file not shown.
|
Before Width: | Height: | Size: 4.9 KiB |
@@ -1,40 +0,0 @@
|
||||
var rule = {
|
||||
title: '56动漫',
|
||||
host: 'https://www.56dm.cc/',
|
||||
url: 'https://www.56dm.cc/type/fyclass-fypage.html',
|
||||
searchUrl: 'https://www.56dm.cc/search/**----------fypage---.html',
|
||||
searchable: 2, //是否启用全局搜索,
|
||||
quickSearch: 0, //是否启用快速搜索,
|
||||
filterable: 0, //是否启用分类筛选,
|
||||
headers: {
|
||||
'User-Agent': 'UC_UA', // "Cookie": ""
|
||||
}, // class_parse:'.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html',
|
||||
class_parse: '.snui-header-menu-nav li:gt(0):lt(6);a&&Text;a&&href;.*/(.*?).html',
|
||||
play_parse: true,
|
||||
lazy: `js:
|
||||
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,
|
||||
推荐: '.cCBf_FAAEfbc;li;a&&title;.lazyload&&data-original;.dAD_BBCI&&Text;a&&href',
|
||||
double: true, // 推荐内容是否双层定位
|
||||
一级: '.cCBf_FAAEfbc li;a&&title;a&&data-original;.dAD_BBCI&&Text;a&&href',
|
||||
二级: {
|
||||
"title": "h1&&Text",
|
||||
"img": ".stui-content__thumb .lazyload&&data-original",
|
||||
"desc": ".cCBf_DABCcac__hcIdeE p:eq(0)&&Text;.cCBf_DABCcac__hcIdeE p:eq(1)&&Text;.cCBf_DABCcac__hcIdeE p:eq(2)&&Text;.cCBf_DABCcac__hcIdeE p:eq(3)&&Text;.cCBf_DABCcac__hcIdeE p:eq(4)&&Text",
|
||||
"content": ".detail&&Text",
|
||||
"tabs": ".channel-tab li",
|
||||
"lists": ".play-list-content:eq(#id) li"
|
||||
},
|
||||
搜索: '.cCBf_FAAEfbc__dbD;a&&title;.lazyload&&data-original;.dAD_BBCI&&Text;a&&href;.cCBf_FAAEfbc__hcIdeE&&p:eq(0) p&&Text',
|
||||
}
|
||||
-109
@@ -1,109 +0,0 @@
|
||||
/**
|
||||
* 传参 ?type=url¶ms=http://122.228.85.203:1000@泽少1
|
||||
* 传参 ?type=url¶ms=http://122.228.85.203:1000@泽少2
|
||||
*/
|
||||
|
||||
var rule = {
|
||||
title: 'APPV2[模板]',
|
||||
author: '道长',
|
||||
version: '20241012 beta1',
|
||||
update_info: `
|
||||
20241012:
|
||||
1.根据群友嗷呜的appv2模板修改成可传参源,类似采集之王用法传参
|
||||
`.trim(),
|
||||
host: '',
|
||||
url: '/api.php/app/video?tid=fyclassfyfilter&limit=20&pg=fypage',
|
||||
filter_url: '',
|
||||
filter: {},
|
||||
homeUrl: '/api.php/app/index_video',
|
||||
detailUrl: '/api.php/app/video_detail?id=fyid',
|
||||
searchUrl: '/api.php/app/search?text=**&pg=fypage',
|
||||
parseUrl: '',
|
||||
searchable: 2,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
headers: {
|
||||
'User-Agent': 'okhttp/4.1.0'
|
||||
},
|
||||
params: 'http://122.228.85.203:1000$http://122.228.85.203:1000/play?url=',
|
||||
hostJs: $js.toString(() => {
|
||||
HOST = rule.params.split('$')[0];
|
||||
}),
|
||||
预处理: $js.toString(() => {
|
||||
log(`传入参数:${rule.params}`);
|
||||
let _host = rule.params.split('$')[0];
|
||||
rule.parseUrl = rule.params.split('$')[1];
|
||||
let _url = _host.rstrip('/') + '/api.php/app/nav?token';
|
||||
let _headers = {'User-Agent': 'Dart/2.14 (dart:io)'};
|
||||
let html = request(_url, {headers: _headers});
|
||||
let data = JSON.parse(html);
|
||||
let _classes = [];
|
||||
let _filter = {};
|
||||
let _filter_url = '';
|
||||
let dy = {"class": "类型", "area": "地区", "lang": "语言", "year": "年份", "letter": "字母", "by": "排序"};
|
||||
let jsonData = data.list;
|
||||
for (let k = 0; k < jsonData.length; k++) {
|
||||
let hasNonEmptyField = false;
|
||||
let _obj = {
|
||||
type_name: jsonData[k].type_name,
|
||||
type_id: jsonData[k].type_id,
|
||||
};
|
||||
_classes.push(_obj);
|
||||
for (let key in dy) {
|
||||
if (key in jsonData[k].type_extend && jsonData[k].type_extend[key].trim() !== "") {
|
||||
hasNonEmptyField = true;
|
||||
break
|
||||
}
|
||||
}
|
||||
if (hasNonEmptyField) {
|
||||
_filter[String(jsonData[k].type_id)] = [];
|
||||
for (let dkey in jsonData[k].type_extend) {
|
||||
if (dkey in dy && jsonData[k].type_extend[dkey].trim() !== "") {
|
||||
if (k === 0) {
|
||||
_filter_url += `&${dkey}={{fl.${dkey}}}`
|
||||
}
|
||||
let values = jsonData[k].type_extend[dkey].split(',');
|
||||
let valueArray = values.map(value => ({"n": value.trim(), "v": value.trim()}));
|
||||
_filter[String(jsonData[k].type_id)].push({"key": dkey, "name": dy[dkey], "value": valueArray})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
rule.classes = _classes;
|
||||
rule.filter = _filter;
|
||||
rule.filter_url = _filter_url;
|
||||
}),
|
||||
class_parse: $js.toString(() => {
|
||||
input = rule.classes;
|
||||
}),
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
if (!/^http/.test(input)) {
|
||||
input = rule.parseUrl + input
|
||||
} else {
|
||||
input = {
|
||||
url: input,
|
||||
parse: 0,
|
||||
header: ''
|
||||
}
|
||||
}
|
||||
|
||||
}),
|
||||
推荐: $js.toString(() => {
|
||||
let data = JSON.parse(request(input)).list;
|
||||
let com = [];
|
||||
data.forEach(item => {
|
||||
if (Array.isArray(item.vlist) && item.vlist.length !== 0) {
|
||||
com = com.concat(item.vlist)
|
||||
}
|
||||
})
|
||||
VODS = com
|
||||
}),
|
||||
一级: $js.toString(() => {
|
||||
VODS = JSON.parse(request(input)).list
|
||||
}),
|
||||
二级: $js.toString(() => {
|
||||
VOD = JSON.parse(request(input)).data
|
||||
}),
|
||||
搜索: '*',
|
||||
}
|
||||
+1
-169
@@ -1,169 +1 @@
|
||||
// 注意事项:此源仅支持 影视TV 及 爱佬版tvbox最新版
|
||||
// 注意事项:此源仅支持 影视TV 及 爱佬版tvbox最新版
|
||||
// 注意事项:此源仅支持 影视TV 及 爱佬版tvbox最新版
|
||||
// 3个set-Cookie
|
||||
|
||||
var rule = {
|
||||
title:'Anime1动畫',
|
||||
host:'https://anime1.me',
|
||||
url: '/fyclass',
|
||||
detailUrl:'/?cat=fyid',
|
||||
searchUrl: '/page/fypage?s=**',
|
||||
searchable:2,
|
||||
quickSearch:0,
|
||||
headers:{'User-Agent': 'PC_UA'},
|
||||
timeout:5000,
|
||||
class_name:'連載中&2025&2024&2023&2022&2021&2020&2019&2018&更早',
|
||||
class_url:'連載中&2025&2024&2023&2022&2021&2020&2019&2018&2017',
|
||||
play_parse:true,
|
||||
lazy:`js:
|
||||
var apiurl = 'https://v.anime1.me/api';
|
||||
var html = request(apiurl, {
|
||||
headers: {
|
||||
'Referer': HOST,
|
||||
},
|
||||
body: 'd=' + input,
|
||||
method: 'POST',
|
||||
withHeaders: true
|
||||
});
|
||||
let json = JSON.parse(html);
|
||||
print(json);
|
||||
log(Object.keys(json));
|
||||
let setCk = Object.keys(json).filter(it => it.toLowerCase() === "set-cookie");
|
||||
let cookie = setCk ? json[setCk] : "";
|
||||
// 3个set-Cookie
|
||||
if (Array.isArray(cookie)) {
|
||||
cookie = cookie.join(';');
|
||||
}
|
||||
cookie = cookie.split(';').filter(function(it) {
|
||||
return ['e', 'p', 'h'].includes(it.split('=')[0])
|
||||
}).join(';');
|
||||
log(cookie);
|
||||
var purl = JSON.parse(json.body).s[0].src;
|
||||
if (purl.startsWith('/')) {
|
||||
purl = 'https:' + purl
|
||||
}
|
||||
input = {
|
||||
jx: 0,
|
||||
url: purl,
|
||||
parse: 0,
|
||||
header: JSON.stringify({
|
||||
'referer': HOST,
|
||||
'Cookie': cookie,
|
||||
'user-agent': PC_UA
|
||||
}),
|
||||
}
|
||||
`,
|
||||
limit:6,
|
||||
推荐: `js:
|
||||
var d = [];
|
||||
function stripHtmlTag(src) {
|
||||
return src.replace(/<\\/?[^>]+(>|$)/g, '').replace(/&.{1,5};/g, '').replace(/\\s{2,}/g, ' ');
|
||||
}
|
||||
var timestamp = new Date().getTime();
|
||||
var json = request('https://d1zquzjgwo9yb.cloudfront.net/?_=' + timestamp);
|
||||
var list = JSON.parse(json);
|
||||
let playKeys = Object.values(list).filter(function(x) {
|
||||
return x[2].includes('連載中');
|
||||
});
|
||||
playKeys.forEach(function(it) {
|
||||
d.push({
|
||||
title: stripHtmlTag(it[1]),
|
||||
img: 'https://sta.anicdn.com/playerImg/8.jpg',
|
||||
desc: it[2],
|
||||
url: it[0],
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
`,
|
||||
一级: `js:
|
||||
var d = [];
|
||||
function stripHtmlTag(src) {
|
||||
return src.replace(/<\\/?[^>]+(>|$)/g, '').replace(/&.{1,5};/g, '').replace(/\\s{2,}/g, ' ');
|
||||
}
|
||||
var timestamp = new Date().getTime();
|
||||
var json = request('https://d1zquzjgwo9yb.cloudfront.net/?_=' + timestamp);
|
||||
var list = JSON.parse(json);
|
||||
let playKeys = Object.values(list).filter(function(x) {
|
||||
if (MY_CATE === '連載中') return x[2].includes(MY_CATE);
|
||||
else if (MY_CATE === '2017') return x[3] <= MY_CATE;
|
||||
else return x[3] == MY_CATE;
|
||||
});
|
||||
playKeys.forEach(function(it) {
|
||||
d.push({
|
||||
title: stripHtmlTag(it[1]),
|
||||
img: 'https://sta.anicdn.com/playerImg/8.jpg',
|
||||
desc: it[2],
|
||||
url: it[0],
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
`,
|
||||
二级: `js:
|
||||
pdfh = jsp.pdfh; pdfa = jsp.pdfa; pd = jsp.pd;
|
||||
var html = request(input);
|
||||
var timestamp = new Date().getTime();
|
||||
var json = request('https://d1zquzjgwo9yb.cloudfront.net/?_=' + timestamp);
|
||||
var list = JSON.parse(json);
|
||||
var vid = input.split('=')[1];
|
||||
let playKeys = Object.values(list).find(function(x) {
|
||||
return x[0] === parseInt(vid);
|
||||
});
|
||||
VOD = {
|
||||
vod_pic: 'https://sta.anicdn.com/playerImg/8.jpg',
|
||||
vod_id: playKeys[0],
|
||||
vod_name: playKeys[1],
|
||||
vod_content: playKeys[2],
|
||||
vod_year: playKeys[3],
|
||||
type_name: playKeys[4],
|
||||
vod_actor: playKeys[5],
|
||||
};
|
||||
var pageurl = pd(html, '.cat-links&&a&&href');
|
||||
var pagenum = 1;
|
||||
let vod_tab_list = [];
|
||||
let vlist = [];
|
||||
for (let p = 1; p < parseInt(pagenum) + 1; p++) {
|
||||
let phtml = request(pageurl + '/page/' + pagenum);
|
||||
let new_vod_list = [];
|
||||
let vodList = [];
|
||||
vodList = pdfa(phtml, '.site-main&&article');
|
||||
for (let i = 0; i < vodList.length; i++) {
|
||||
let it = vodList[i];
|
||||
let ptitle = pdfh(it, '.entry-title&&Text').replace(/\\[(.*)\\]/, '$1');
|
||||
let purl = pd(it, '.video-js&&data-apireq');
|
||||
new_vod_list.push(ptitle + '$' + purl);
|
||||
}
|
||||
vlist = vlist.concat(new_vod_list);
|
||||
try {
|
||||
pagenum = pd(phtml, '.nav-previous&&a&&href').split('/page/')[1];
|
||||
} catch(e) {}
|
||||
}
|
||||
let vlist2 = vlist.reverse().join("#");
|
||||
vod_tab_list.push(vlist2);
|
||||
VOD.vod_play_from = '在线播放';
|
||||
VOD.vod_play_url = vod_tab_list.join("$$$");
|
||||
`,
|
||||
搜索: `js:
|
||||
var d = [];
|
||||
function stripHtmlTag(src) {
|
||||
return src.replace(/<\\/?[^>]+(>|$)/g, '').replace(/&.{1,5};/g, '').replace(/\\s{2,}/g, ' ');
|
||||
}
|
||||
var timestamp = new Date().getTime();
|
||||
var json = request('https://d1zquzjgwo9yb.cloudfront.net/?_=' + timestamp);
|
||||
var list = JSON.parse(json);
|
||||
var wd = input.split('=')[1];
|
||||
let playKeys = Object.values(list).filter(function(x) {
|
||||
return x[1].includes(wd);
|
||||
});
|
||||
log(playKeys);
|
||||
playKeys.forEach(function(it) {
|
||||
d.push({
|
||||
title: stripHtmlTag(it[1]),
|
||||
img: 'https://sta.anicdn.com/playerImg/8.jpg',
|
||||
desc: it[2],
|
||||
url: it[0],
|
||||
});
|
||||
});
|
||||
setResult(d);
|
||||
`,
|
||||
}
|
||||
Ly8g5rOo5oSP5LqL6aG5OuatpOa6kOS7heaUr+aMgSDlvbHop4ZUViDlj4og54ix5L2s54mIdHZib3jmnIDmlrDniYgKLy8g5rOo5oSP5LqL6aG5OuatpOa6kOS7heaUr+aMgSDlvbHop4ZUViDlj4og54ix5L2s54mIdHZib3jmnIDmlrDniYgKLy8g5rOo5oSP5LqL6aG5OuatpOa6kOS7heaUr+aMgSDlvbHop4ZUViDlj4og54ix5L2s54mIdHZib3jmnIDmlrDniYgKLy8gM+S4qnNldC1Db29raWUKCnZhciBydWxlID0gewoJdGl0bGU6J0FuaW1lMeWKqOeVqycsCglob3N0OidodHRwczovL2FuaW1lMS5tZScsCgl1cmw6ICcvZnljbGFzcycsCglkZXRhaWxVcmw6Jy8/Y2F0PWZ5aWQnLAoJc2VhcmNoVXJsOiAnL3BhZ2UvZnlwYWdlP3M9KionLAoJc2VhcmNoYWJsZToyLAoJcXVpY2tTZWFyY2g6MCwKCWhlYWRlcnM6eydVc2VyLUFnZW50JzogJ1BDX1VBJ30sCgl0aW1lb3V0OjUwMDAsCiAgICBjbGFzc19uYW1lOifpgKPovInkuK0mMjAyNSYyMDI0JjIwMjMmMjAyMiYyMDIxJjIwMjAmMjAxOSYyMDE4JuabtOaXqScsCiAgICBjbGFzc191cmw6J+mAo+i8ieS4rSYyMDI1JjIwMjQmMjAyMyYyMDIyJjIwMjEmMjAyMCYyMDE5JjIwMTgmMjAxNycsCglwbGF5X3BhcnNlOnRydWUsCglsYXp5OmBqczoKCQl2YXIgYXBpdXJsID0gJ2h0dHBzOi8vdi5hbmltZTEubWUvYXBpJzsKCQl2YXIgaHRtbCA9IHJlcXVlc3QoYXBpdXJsLCB7CgkJCWhlYWRlcnM6IHsKCQkJCSdSZWZlcmVyJzogSE9TVCwKCQkJfSwKCQkJYm9keTogJ2Q9JyArIGlucHV0LAoJCQltZXRob2Q6ICdQT1NUJywKCQkJd2l0aEhlYWRlcnM6IHRydWUKCQl9KTsKCQlsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CgkJcHJpbnQoanNvbik7CgkJbG9nKE9iamVjdC5rZXlzKGpzb24pKTsKCQlsZXQgc2V0Q2sgPSBPYmplY3Qua2V5cyhqc29uKS5maWx0ZXIoaXQgPT4gaXQudG9Mb3dlckNhc2UoKSA9PT0gInNldC1jb29raWUiKTsKCQlsZXQgY29va2llID0gc2V0Q2sgPyBqc29uW3NldENrXSA6ICIiOwoJCS8vIDPkuKpzZXQtQ29va2llCgkJaWYgKEFycmF5LmlzQXJyYXkoY29va2llKSkgewoJCQljb29raWUgPSBjb29raWUuam9pbignOycpOwoJCX0KCQljb29raWUgPSBjb29raWUuc3BsaXQoJzsnKS5maWx0ZXIoZnVuY3Rpb24oaXQpIHsKCQkJcmV0dXJuIFsnZScsICdwJywgJ2gnXS5pbmNsdWRlcyhpdC5zcGxpdCgnPScpWzBdKQoJCX0pLmpvaW4oJzsnKTsKCQlsb2coY29va2llKTsKCQl2YXIgcHVybCA9IEpTT04ucGFyc2UoanNvbi5ib2R5KS5zWzBdLnNyYzsKCQlpZiAocHVybC5zdGFydHNXaXRoKCcvJykpIHsKCQkJcHVybCA9ICdodHRwczonICsgcHVybAoJCX0KCQlpbnB1dCA9IHsKCQkJang6IDAsCgkJCXVybDogcHVybCwKCQkJcGFyc2U6IDAsCgkJCWhlYWRlcjogSlNPTi5zdHJpbmdpZnkoewoJCQkJJ3JlZmVyZXInOiBIT1NULAoJCQkJJ0Nvb2tpZSc6IGNvb2tpZSwKCQkJCSd1c2VyLWFnZW50JzogUENfVUEKCQkJfSksCgkJfQoJYCwKCWxpbWl0OjYsCgnmjqjojZA6IGBqczoKCQl2YXIgZCA9IFtdOwoJCWZ1bmN0aW9uIHN0cmlwSHRtbFRhZyhzcmMpIHsKCQkJcmV0dXJuIHNyYy5yZXBsYWNlKC88XFwvP1tePl0rKD58JCkvZywgJycpLnJlcGxhY2UoLyYuezEsNX07L2csICcnKS5yZXBsYWNlKC9cXHN7Mix9L2csICcgJyk7CgkJfQoJCXZhciB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKCQl2YXIganNvbiA9IHJlcXVlc3QoJ2h0dHBzOi8vZDF6cXV6amd3bzl5Yi5jbG91ZGZyb250Lm5ldC8/Xz0nICsgdGltZXN0YW1wKTsKCQl2YXIgbGlzdCA9IEpTT04ucGFyc2UoanNvbik7CgkJbGV0IHBsYXlLZXlzID0gT2JqZWN0LnZhbHVlcyhsaXN0KS5maWx0ZXIoZnVuY3Rpb24oeCkgewoJCQlyZXR1cm4geFsyXS5pbmNsdWRlcygn6YCj6LyJ5LitJyk7CgkJfSk7CgkJcGxheUtleXMuZm9yRWFjaChmdW5jdGlvbihpdCkgewoJCQlkLnB1c2goewoJCQkJdGl0bGU6IHN0cmlwSHRtbFRhZyhpdFsxXSksCgkJCQlpbWc6ICdodHRwczovL3N0YS5hbmljZG4uY29tL3BsYXllckltZy84LmpwZycsCgkJCQlkZXNjOiBpdFsyXSwKCQkJCXVybDogaXRbMF0sCgkJCX0pOwoJCX0pOwoJCXNldFJlc3VsdChkKTsKCWAsCgnkuIDnuqc6IGBqczoKCQl2YXIgZCA9IFtdOwoJCWZ1bmN0aW9uIHN0cmlwSHRtbFRhZyhzcmMpIHsKCQkJcmV0dXJuIHNyYy5yZXBsYWNlKC88XFwvP1tePl0rKD58JCkvZywgJycpLnJlcGxhY2UoLyYuezEsNX07L2csICcnKS5yZXBsYWNlKC9cXHN7Mix9L2csICcgJyk7CgkJfQoJCXZhciB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKCQl2YXIganNvbiA9IHJlcXVlc3QoJ2h0dHBzOi8vZDF6cXV6amd3bzl5Yi5jbG91ZGZyb250Lm5ldC8/Xz0nICsgdGltZXN0YW1wKTsKCQl2YXIgbGlzdCA9IEpTT04ucGFyc2UoanNvbik7CgkJbGV0IHBsYXlLZXlzID0gT2JqZWN0LnZhbHVlcyhsaXN0KS5maWx0ZXIoZnVuY3Rpb24oeCkgewoJCQlpZiAoTVlfQ0FURSA9PT0gJ+mAo+i8ieS4rScpIHJldHVybiB4WzJdLmluY2x1ZGVzKE1ZX0NBVEUpOwoJCQllbHNlIGlmIChNWV9DQVRFID09PSAnMjAxNycpIHJldHVybiB4WzNdIDw9IE1ZX0NBVEU7CgkJCWVsc2UgcmV0dXJuIHhbM10gPT0gTVlfQ0FURTsKCQl9KTsKCQlwbGF5S2V5cy5mb3JFYWNoKGZ1bmN0aW9uKGl0KSB7CgkJCWQucHVzaCh7CgkJCQl0aXRsZTogc3RyaXBIdG1sVGFnKGl0WzFdKSwKCQkJCWltZzogJ2h0dHBzOi8vc3RhLmFuaWNkbi5jb20vcGxheWVySW1nLzguanBnJywKCQkJCWRlc2M6IGl0WzJdLAoJCQkJdXJsOiBpdFswXSwKCQkJfSk7CgkJfSk7CgkJc2V0UmVzdWx0KGQpOwoJYCwKCeS6jOe6pzogYGpzOgoJCXBkZmggPSBqc3AucGRmaDsgcGRmYSA9IGpzcC5wZGZhOyBwZCA9IGpzcC5wZDsKCQl2YXIgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwoJCXZhciB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKCQl2YXIganNvbiA9IHJlcXVlc3QoJ2h0dHBzOi8vZDF6cXV6amd3bzl5Yi5jbG91ZGZyb250Lm5ldC8/Xz0nICsgdGltZXN0YW1wKTsKCQl2YXIgbGlzdCA9IEpTT04ucGFyc2UoanNvbik7CgkJdmFyIHZpZCA9IGlucHV0LnNwbGl0KCc9JylbMV07CgkJbGV0IHBsYXlLZXlzID0gT2JqZWN0LnZhbHVlcyhsaXN0KS5maW5kKGZ1bmN0aW9uKHgpIHsKCQkJcmV0dXJuIHhbMF0gPT09IHBhcnNlSW50KHZpZCk7CgkJfSk7CgkJVk9EID0gewoJCQl2b2RfcGljOiAnaHR0cHM6Ly9zdGEuYW5pY2RuLmNvbS9wbGF5ZXJJbWcvOC5qcGcnLAoJCQl2b2RfaWQ6IHBsYXlLZXlzWzBdLAoJCQl2b2RfbmFtZTogcGxheUtleXNbMV0sCgkJCXZvZF9jb250ZW50OiBwbGF5S2V5c1syXSwKCQkJdm9kX3llYXI6IHBsYXlLZXlzWzNdLAoJCQl0eXBlX25hbWU6IHBsYXlLZXlzWzRdLAoJCQl2b2RfYWN0b3I6IHBsYXlLZXlzWzVdLAoJCX07CgkJdmFyIHBhZ2V1cmwgPSBwZChodG1sLCAnLmNhdC1saW5rcyYmYSYmaHJlZicpOwoJCXZhciBwYWdlbnVtID0gMTsKCQlsZXQgdm9kX3RhYl9saXN0ID0gW107CgkJbGV0IHZsaXN0ID0gW107CgkJZm9yIChsZXQgcCA9IDE7IHAgPCBwYXJzZUludChwYWdlbnVtKSArIDE7IHArKykgewoJCQlsZXQgcGh0bWwgPSByZXF1ZXN0KHBhZ2V1cmwgKyAnL3BhZ2UvJyArIHBhZ2VudW0pOwoJCQlsZXQgbmV3X3ZvZF9saXN0ID0gW107CgkJCWxldCB2b2RMaXN0ID0gW107CgkJCXZvZExpc3QgPSBwZGZhKHBodG1sLCAnLnNpdGUtbWFpbiYmYXJ0aWNsZScpOwoJCQlmb3IgKGxldCBpID0gMDsgaSALine truncated
|
||||
-1013
File diff suppressed because it is too large.
Load diff
@@ -1,13 +0,0 @@
|
||||
muban.短视2.二级.img = '.detail-pic&&img&&data-src';
|
||||
var rule = {
|
||||
title: 'NyaFun',
|
||||
模板:'短视2',
|
||||
host: 'https://www.nyafun.net',
|
||||
homeUrl:'/map.html',
|
||||
url: '/index.php/api/vod#type=fyclass&page=fypage',
|
||||
class_name:'番剧&剧场',
|
||||
class_url:'2&1',
|
||||
detailUrl:'/bangumi/fyid.html',
|
||||
推荐:'.border-box .public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
|
||||
double: false, // 推荐内容是否双层定位
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
[
|
||||
{
|
||||
"share_name": "优品阁",
|
||||
"share_id": "uWa9gbM3RJ7"
|
||||
},
|
||||
{
|
||||
"share_name": "阿里1T",
|
||||
"share_id": "mxAfB6eRgY4"
|
||||
},
|
||||
{
|
||||
"share_name": "平凡中的",
|
||||
"share_id": "4ydLxf7VgH7"
|
||||
},
|
||||
{
|
||||
"share_name": "tacit0924",
|
||||
"share_id": "DNgnCudf4cD?pwd=6666"
|
||||
},
|
||||
{
|
||||
"share_name": "黄妈",
|
||||
"share_id": "4bGRVUdUtct"
|
||||
},
|
||||
{
|
||||
"share_name": "YYDSVIP",
|
||||
"share_id": "dieULBdYP3D"
|
||||
},
|
||||
{
|
||||
"share_name": "优源阁",
|
||||
"share_id": "RnjUi1urdb2"
|
||||
},
|
||||
{
|
||||
"share_name": "风流动漫",
|
||||
"share_id": "WdaaeX7HK44"
|
||||
},
|
||||
{
|
||||
"share_name": "风流剧集",
|
||||
"share_id": "kgxWjZsK6bq"
|
||||
},
|
||||
{
|
||||
"share_name": "xiaaluo",
|
||||
"share_id": "sg8CdGUwmUr"
|
||||
},
|
||||
{
|
||||
"share_name": "4K影视",
|
||||
"share_id": "wHPKUENKFsS"
|
||||
},
|
||||
{
|
||||
"share_name": "诺兰全集",
|
||||
"share_id": "gf2GebXnZHh"
|
||||
},
|
||||
{
|
||||
"share_name": "纪录片",
|
||||
"share_id": "fSNHaYST47s"
|
||||
},
|
||||
{
|
||||
"share_name": "掌灯者|港",
|
||||
"share_id": "wHPKUENKFsS"
|
||||
},
|
||||
{
|
||||
"share_name": "掌灯者|一",
|
||||
"share_id": "wHPKUENKFsS"
|
||||
},
|
||||
{
|
||||
"share_name": "掌灯者|二",
|
||||
"share_id": "wHPKUENKFsS"
|
||||
},
|
||||
{
|
||||
"share_name": "掌灯者|三",
|
||||
"share_id": "wHPKUENKFsS"
|
||||
}
|
||||
]
|
||||
Vendored
-10945
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
-6192
File diff suppressed because it is too large.
Load diff
-3862
File diff suppressed because it is too large.
Load diff
@@ -1,69 +0,0 @@
|
||||
/***
|
||||
* gbk编码解码函数
|
||||
* strTool = gbkTool() strTool.encode(key)
|
||||
* @returns {{encode: (function(*): *), decode: (function(*): *)}}
|
||||
*/
|
||||
export function gbkTool() {
|
||||
var data = function(zipData) {
|
||||
var re = zipData
|
||||
.replace(/#(\d+)\$/g, function(a, b) {
|
||||
return Array(+b + 3).join('#');
|
||||
})
|
||||
.replace(/#/g, '####')
|
||||
.replace(/(\w\w):([\w#]+)(?:,|$)/g, function(a, hd, dt) {
|
||||
return dt.replace(/../g, function(a) {
|
||||
if (a != '##') {
|
||||
return hd + a;
|
||||
} else {
|
||||
return a;
|
||||
}
|
||||
});
|
||||
});
|
||||
return re;
|
||||
}('4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f90Line truncated
|
||||
U2Ghash = {},
|
||||
G2Uhash = {};
|
||||
! function(data) {
|
||||
var k = 0;
|
||||
data = data.match(/..../g);
|
||||
for (var i = 0x81; i <= 0xfe; i++) {
|
||||
for (var j = 0x40; j <= 0xFE; j++) {
|
||||
U2Ghash[data[k++]] = ('%' + i.toString(16) + '%' + j.toString(16))
|
||||
.toUpperCase();
|
||||
}
|
||||
}
|
||||
for (var key in U2Ghash) {
|
||||
G2Uhash[U2Ghash[key]] = key;
|
||||
}
|
||||
}(data);
|
||||
|
||||
function isAscii(unicode) {
|
||||
return ((unicode == 0x20AC) || (unicode <= 0x007F && unicode >= 0x0000));
|
||||
}
|
||||
return {
|
||||
encode: function(str) {
|
||||
return str.replace(/./g, function(a) {
|
||||
var code = a.charCodeAt(0);
|
||||
if (isAscii(code)) {
|
||||
return encodeURIComponent(a);
|
||||
} else {
|
||||
var key = code.toString(16);
|
||||
if (key.length != 4) key = ('000' + key).match(/....$/)[0];
|
||||
return U2Ghash[key] || a;
|
||||
}
|
||||
});
|
||||
},
|
||||
decode: function(str) {
|
||||
return str.replace(/%[0-9A-F]{2}%[0-9A-F]{2}/g, function(a) {
|
||||
if (a in G2Uhash) {
|
||||
return String.fromCharCode('0x' + G2Uhash[a]);
|
||||
} else {
|
||||
return a;
|
||||
}
|
||||
}).replace(/%[\w]{2}/g, function(a) {
|
||||
return decodeURIComponent(a);
|
||||
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
Vendored
-504
@@ -1,504 +0,0 @@
|
||||
(function(global, factory) {
|
||||
typeof exports === "object" && typeof module !== "undefined" ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.jinja = {}))
|
||||
})(this, function(jinja) {
|
||||
"use strict";
|
||||
var STRINGS = /'(\\.|[^'])*'|"(\\.|[^"'"])*"/g;
|
||||
var IDENTS_AND_NUMS = /([$_a-z][$\w]*)|([+-]?\d+(\.\d+)?)/g;
|
||||
var NUMBER = /^[+-]?\d+(\.\d+)?$/;
|
||||
var NON_PRIMITIVES = /\[[@#~](,[@#~])*\]|\[\]|\{([@i]:[@#~])(,[@i]:[@#~])*\}|\{\}/g;
|
||||
var IDENTIFIERS = /[$_a-z][$\w]*/gi;
|
||||
var VARIABLES = /i(\.i|\[[@#i]\])*/g;
|
||||
var ACCESSOR = /(\.i|\[[@#i]\])/g;
|
||||
var OPERATORS = /(===?|!==?|>=?|<=?|&&|\|\||[+\-\*\/%])/g;
|
||||
var EOPS = /(^|[^$\w])(and|or|not|is|isnot)([^$\w]|$)/g;
|
||||
var LEADING_SPACE = /^\s+/;
|
||||
var TRAILING_SPACE = /\s+$/;
|
||||
var START_TOKEN = /\{\{\{|\{\{|\{%|\{#/;
|
||||
var TAGS = {
|
||||
"{{{": /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}\}/,
|
||||
"{{": /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}/,
|
||||
"{%": /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?%\}/,
|
||||
"{#": /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?#\}/
|
||||
};
|
||||
var delimeters = {
|
||||
"{%": "directive",
|
||||
"{{": "output",
|
||||
"{#": "comment"
|
||||
};
|
||||
var operators = {
|
||||
and: "&&",
|
||||
or: "||",
|
||||
not: "!",
|
||||
is: "==",
|
||||
isnot: "!="
|
||||
};
|
||||
var constants = {
|
||||
true: true,
|
||||
false: false,
|
||||
null: null
|
||||
};
|
||||
|
||||
function Parser() {
|
||||
this.nest = [];
|
||||
this.compiled = [];
|
||||
this.childBlocks = 0;
|
||||
this.parentBlocks = 0;
|
||||
this.isSilent = false
|
||||
}
|
||||
Parser.prototype.push = function(line) {
|
||||
if (!this.isSilent) {
|
||||
this.compiled.push(line)
|
||||
}
|
||||
};
|
||||
Parser.prototype.parse = function(src) {
|
||||
this.tokenize(src);
|
||||
return this.compiled
|
||||
};
|
||||
Parser.prototype.tokenize = function(src) {
|
||||
var lastEnd = 0,
|
||||
parser = this,
|
||||
trimLeading = false;
|
||||
matchAll(src, START_TOKEN, function(open, index, src) {
|
||||
var match = src.slice(index + open.length).match(TAGS[open]);
|
||||
match = match ? match[0] : "";
|
||||
var simplified = match.replace(STRINGS, "@");
|
||||
if (!match || ~simplified.indexOf(open)) {
|
||||
return index + 1
|
||||
}
|
||||
var inner = match.slice(0, 0 - open.length);
|
||||
if (inner.charAt(0) === "-") var wsCollapseLeft = true;
|
||||
if (inner.slice(-1) === "-") var wsCollapseRight = true;
|
||||
inner = inner.replace(/^-|-$/g, "").trim();
|
||||
if (parser.rawMode && open + inner !== "{%endraw") {
|
||||
return index + 1
|
||||
}
|
||||
var text = src.slice(lastEnd, index);
|
||||
lastEnd = index + open.length + match.length;
|
||||
if (trimLeading) text = trimLeft(text);
|
||||
if (wsCollapseLeft) text = trimRight(text);
|
||||
if (wsCollapseRight) trimLeading = true;
|
||||
if (open === "{{{") {
|
||||
open = "{{";
|
||||
inner += "|safe"
|
||||
}
|
||||
parser.textHandler(text);
|
||||
parser.tokenHandler(open, inner)
|
||||
});
|
||||
var text = src.slice(lastEnd);
|
||||
if (trimLeading) text = trimLeft(text);
|
||||
this.textHandler(text)
|
||||
};
|
||||
Parser.prototype.textHandler = function(text) {
|
||||
this.push("write(" + JSON.stringify(text) + ");")
|
||||
};
|
||||
Parser.prototype.tokenHandler = function(open, inner) {
|
||||
var type = delimeters[open];
|
||||
if (type === "directive") {
|
||||
this.compileTag(inner)
|
||||
} else if (type === "output") {
|
||||
var extracted = this.extractEnt(inner, STRINGS, "@");
|
||||
extracted.src = extracted.src.replace(/\|\|/g, "~").split("|");
|
||||
extracted.src = extracted.src.map(function(part) {
|
||||
return part.split("~").join("||")
|
||||
});
|
||||
var parts = this.injectEnt(extracted, "@");
|
||||
if (parts.length > 1) {
|
||||
var filters = parts.slice(1).map(this.parseFilter.bind(this));
|
||||
this.push("filter(" + this.parseExpr(parts[0]) + "," + filters.join(",") + ");")
|
||||
} else {
|
||||
this.push("filter(" + this.parseExpr(parts[0]) + ");")
|
||||
}
|
||||
}
|
||||
};
|
||||
Parser.prototype.compileTag = function(str) {
|
||||
var directive = str.split(" ")[0];
|
||||
var handler = tagHandlers[directive];
|
||||
if (!handler) {
|
||||
throw new Error("Invalid tag: " + str)
|
||||
}
|
||||
handler.call(this, str.slice(directive.length).trim())
|
||||
};
|
||||
Parser.prototype.parseFilter = function(src) {
|
||||
src = src.trim();
|
||||
var match = src.match(/[:(]/);
|
||||
var i = match ? match.index : -1;
|
||||
if (i < 0) return JSON.stringify([src]);
|
||||
var name = src.slice(0, i);
|
||||
var args = src.charAt(i) === ":" ? src.slice(i + 1) : src.slice(i + 1, -1);
|
||||
args = this.parseExpr(args, {
|
||||
terms: true
|
||||
});
|
||||
return "[" + JSON.stringify(name) + "," + args + "]"
|
||||
};
|
||||
Parser.prototype.extractEnt = function(src, regex, placeholder) {
|
||||
var subs = [],
|
||||
isFunc = typeof placeholder == "function";
|
||||
src = src.replace(regex, function(str) {
|
||||
var replacement = isFunc ? placeholder(str) : placeholder;
|
||||
if (replacement) {
|
||||
subs.push(str);
|
||||
return replacement
|
||||
}
|
||||
return str
|
||||
});
|
||||
return {
|
||||
src: src,
|
||||
subs: subs
|
||||
}
|
||||
};
|
||||
Parser.prototype.injectEnt = function(extracted, placeholder) {
|
||||
var src = extracted.src,
|
||||
subs = extracted.subs,
|
||||
isArr = Array.isArray(src);
|
||||
var arr = isArr ? src : [src];
|
||||
var re = new RegExp("[" + placeholder + "]", "g"),
|
||||
i = 0;
|
||||
arr.forEach(function(src, index) {
|
||||
arr[index] = src.replace(re, function() {
|
||||
return subs[i++]
|
||||
})
|
||||
});
|
||||
return isArr ? arr : arr[0]
|
||||
};
|
||||
Parser.prototype.replaceComplex = function(s) {
|
||||
var parsed = this.extractEnt(s, /i(\.i|\[[@#i]\])+/g, "v");
|
||||
parsed.src = parsed.src.replace(NON_PRIMITIVES, "~");
|
||||
return this.injectEnt(parsed, "v")
|
||||
};
|
||||
Parser.prototype.parseExpr = function(src, opts) {
|
||||
opts = opts || {};
|
||||
var parsed1 = this.extractEnt(src, STRINGS, "@");
|
||||
parsed1.src = parsed1.src.replace(EOPS, function(s, before, op, after) {
|
||||
return op in operators ? before + operators[op] + after : s
|
||||
});
|
||||
var parsed2 = this.extractEnt(parsed1.src, IDENTS_AND_NUMS, function(s) {
|
||||
return s in constants || NUMBER.test(s) ? "#" : null
|
||||
});
|
||||
var parsed3 = this.extractEnt(parsed2.src, IDENTIFIERS, "i");
|
||||
parsed3.src = parsed3.src.replace(/\s+/g, "");
|
||||
var simplified = parsed3.src;
|
||||
while (simplified !== (simplified = this.replaceComplex(simplified)));
|
||||
while (simplified !== (simplified = simplified.replace(/i(\.i|\[[@#i]\])+/, "v")));
|
||||
simplified = simplified.replace(/[iv]\[v?\]/g, "x");
|
||||
simplified = simplified.replace(/[@#~v]/g, "i");
|
||||
simplified = simplified.replace(OPERATORS, "%");
|
||||
simplified = simplified.replace(/!+[i]/g, "i");
|
||||
var terms = opts.terms ? simplified.split(",") : [simplified];
|
||||
terms.forEach(function(term) {
|
||||
while (term !== (term = term.replace(/\(i(%i)*\)/g, "i")));
|
||||
if (!term.match(/^i(%i)*/)) {
|
||||
throw new Error("Invalid expression: " + src + " " + term)
|
||||
}
|
||||
});
|
||||
parsed3.src = parsed3.src.replace(VARIABLES, this.parseVar.bind(this));
|
||||
parsed2.src = this.injectEnt(parsed3, "i");
|
||||
parsed1.src = this.injectEnt(parsed2, "#");
|
||||
return this.injectEnt(parsed1, "@")
|
||||
};
|
||||
Parser.prototype.parseVar = function(src) {
|
||||
var args = Array.prototype.slice.call(arguments);
|
||||
var str = args.pop(),
|
||||
index = args.pop();
|
||||
if (src === "i" && str.charAt(index + 1) === ":") {
|
||||
return '"i"'
|
||||
}
|
||||
var parts = ['"i"'];
|
||||
src.replace(ACCESSOR, function(part) {
|
||||
if (part === ".i") {
|
||||
parts.push('"i"')
|
||||
} else if (part === "[i]") {
|
||||
parts.push('get("i")')
|
||||
} else {
|
||||
parts.push(part.slice(1, -1))
|
||||
}
|
||||
});
|
||||
return "get(" + parts.join(",") + ")"
|
||||
};
|
||||
Parser.prototype.escName = function(str) {
|
||||
return str.replace(/\W/g, function(s) {
|
||||
return "$" + s.charCodeAt(0).toString(16)
|
||||
})
|
||||
};
|
||||
Parser.prototype.parseQuoted = function(str) {
|
||||
if (str.charAt(0) === "'") {
|
||||
str = str.slice(1, -1).replace(/\\.|"/, function(s) {
|
||||
if (s === "\\'") return "'";
|
||||
return s.charAt(0) === "\\" ? s : "\\" + s
|
||||
});
|
||||
str = '"' + str + '"'
|
||||
}
|
||||
return JSON.parse(str)
|
||||
};
|
||||
var tagHandlers = {
|
||||
if: function(expr) {
|
||||
this.push("if (" + this.parseExpr(expr) + ") {");
|
||||
this.nest.unshift("if")
|
||||
},
|
||||
else: function() {
|
||||
if (this.nest[0] === "for") {
|
||||
this.push("}, function() {")
|
||||
} else {
|
||||
this.push("} else {")
|
||||
}
|
||||
},
|
||||
elseif: function(expr) {
|
||||
this.push("} else if (" + this.parseExpr(expr) + ") {")
|
||||
},
|
||||
endif: function() {
|
||||
this.nest.shift();
|
||||
this.push("}")
|
||||
},
|
||||
for: function(str) {
|
||||
var i = str.indexOf(" in ");
|
||||
var name = str.slice(0, i).trim();
|
||||
var expr = str.slice(i + 4).trim();
|
||||
this.push("each(" + this.parseExpr(expr) + "," + JSON.stringify(name) + ",function() {");
|
||||
this.nest.unshift("for")
|
||||
},
|
||||
endfor: function() {
|
||||
this.nest.shift();
|
||||
this.push("});")
|
||||
},
|
||||
raw: function() {
|
||||
this.rawMode = true
|
||||
},
|
||||
endraw: function() {
|
||||
this.rawMode = false
|
||||
},
|
||||
set: function(stmt) {
|
||||
var i = stmt.indexOf("=");
|
||||
var name = stmt.slice(0, i).trim();
|
||||
var expr = stmt.slice(i + 1).trim();
|
||||
this.push("set(" + JSON.stringify(name) + "," + this.parseExpr(expr) + ");")
|
||||
},
|
||||
block: function(name) {
|
||||
if (this.isParent) {
|
||||
++this.parentBlocks;
|
||||
var blockName = "block_" + (this.escName(name) || this.parentBlocks);
|
||||
this.push("block(typeof " + blockName + ' == "function" ? ' + blockName + " : function() {")
|
||||
} else if (this.hasParent) {
|
||||
this.isSilent = false;
|
||||
++this.childBlocks;
|
||||
blockName = "block_" + (this.escName(name) || this.childBlocks);
|
||||
this.push("function " + blockName + "() {")
|
||||
}
|
||||
this.nest.unshift("block")
|
||||
},
|
||||
endblock: function() {
|
||||
this.nest.shift();
|
||||
if (this.isParent) {
|
||||
this.push("});")
|
||||
} else if (this.hasParent) {
|
||||
this.push("}");
|
||||
this.isSilent = true
|
||||
}
|
||||
},
|
||||
extends: function(name) {
|
||||
name = this.parseQuoted(name);
|
||||
var parentSrc = this.readTemplateFile(name);
|
||||
this.isParent = true;
|
||||
this.tokenize(parentSrc);
|
||||
this.isParent = false;
|
||||
this.hasParent = true;
|
||||
this.isSilent = true
|
||||
},
|
||||
include: function(name) {
|
||||
name = this.parseQuoted(name);
|
||||
var incSrc = this.readTemplateFile(name);
|
||||
this.isInclude = true;
|
||||
this.tokenize(incSrc);
|
||||
this.isInclude = false
|
||||
}
|
||||
};
|
||||
tagHandlers.assign = tagHandlers.set;
|
||||
tagHandlers.elif = tagHandlers.elseif;
|
||||
var getRuntime = function runtime(data, opts) {
|
||||
var defaults = {
|
||||
autoEscape: "toJson"
|
||||
};
|
||||
var _toString = Object.prototype.toString;
|
||||
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
var getKeys = Object.keys || function(obj) {
|
||||
var keys = [];
|
||||
for (var n in obj)
|
||||
if (_hasOwnProperty.call(obj, n)) keys.push(n);
|
||||
return keys
|
||||
};
|
||||
var isArray = Array.isArray || function(obj) {
|
||||
return _toString.call(obj) === "[object Array]"
|
||||
};
|
||||
var create = Object.create || function(obj) {
|
||||
function F() {}
|
||||
F.prototype = obj;
|
||||
return new F
|
||||
};
|
||||
var toString = function(val) {
|
||||
if (val == null) return "";
|
||||
return typeof val.toString == "function" ? val.toString() : _toString.call(val)
|
||||
};
|
||||
var extend = function(dest, src) {
|
||||
var keys = getKeys(src);
|
||||
for (var i = 0, len = keys.length; i < len; i++) {
|
||||
var key = keys[i];
|
||||
dest[key] = src[key]
|
||||
}
|
||||
return dest
|
||||
};
|
||||
var get = function() {
|
||||
var val, n = arguments[0],
|
||||
c = stack.length;
|
||||
while (c--) {
|
||||
val = stack[c][n];
|
||||
if (typeof val != "undefined") break
|
||||
}
|
||||
for (var i = 1, len = arguments.length; i < len; i++) {
|
||||
if (val == null) continue;
|
||||
n = arguments[i];
|
||||
val = _hasOwnProperty.call(val, n) ? val[n] : typeof val._get == "function" ? val[n] = val._get(n) : null
|
||||
}
|
||||
return val == null ? "" : val
|
||||
};
|
||||
var set = function(n, val) {
|
||||
stack[stack.length - 1][n] = val
|
||||
};
|
||||
var push = function(ctx) {
|
||||
stack.push(ctx || {})
|
||||
};
|
||||
var pop = function() {
|
||||
stack.pop()
|
||||
};
|
||||
var write = function(str) {
|
||||
output.push(str)
|
||||
};
|
||||
var filter = function(val) {
|
||||
for (var i = 1, len = arguments.length; i < len; i++) {
|
||||
var arr = arguments[i],
|
||||
name = arr[0],
|
||||
filter = filters[name];
|
||||
if (filter) {
|
||||
arr[0] = val;
|
||||
val = filter.apply(data, arr)
|
||||
} else {
|
||||
throw new Error("Invalid filter: " + name)
|
||||
}
|
||||
}
|
||||
if (opts.autoEscape && name !== opts.autoEscape && name !== "safe") {
|
||||
val = filters[opts.autoEscape].call(data, val)
|
||||
}
|
||||
output.push(val)
|
||||
};
|
||||
var each = function(obj, loopvar, fn1, fn2) {
|
||||
if (obj == null) return;
|
||||
var arr = isArray(obj) ? obj : getKeys(obj),
|
||||
len = arr.length;
|
||||
var ctx = {
|
||||
loop: {
|
||||
length: len,
|
||||
first: arr[0],
|
||||
last: arr[len - 1]
|
||||
}
|
||||
};
|
||||
push(ctx);
|
||||
for (var i = 0; i < len; i++) {
|
||||
extend(ctx.loop, {
|
||||
index: i + 1,
|
||||
index0: i
|
||||
});
|
||||
fn1(ctx[loopvar] = arr[i])
|
||||
}
|
||||
if (len === 0 && fn2) fn2();
|
||||
pop()
|
||||
};
|
||||
var block = function(fn) {
|
||||
push();
|
||||
fn();
|
||||
pop()
|
||||
};
|
||||
var render = function() {
|
||||
return output.join("")
|
||||
};
|
||||
data = data || {};
|
||||
opts = extend(defaults, opts || {});
|
||||
var filters = extend({
|
||||
html: function(val) {
|
||||
return toString(val).split("&").join("&").split("<").join("<").split(">").join(">").split('"').join(""")
|
||||
},
|
||||
safe: function(val) {
|
||||
return val
|
||||
},
|
||||
toJson: function(val) {
|
||||
if (typeof val === "object") {
|
||||
return JSON.stringify(val)
|
||||
}
|
||||
return toString(val)
|
||||
}
|
||||
}, opts.filters || {});
|
||||
var stack = [create(data || {})],
|
||||
output = [];
|
||||
return {
|
||||
get: get,
|
||||
set: set,
|
||||
push: push,
|
||||
pop: pop,
|
||||
write: write,
|
||||
filter: filter,
|
||||
each: each,
|
||||
block: block,
|
||||
render: render
|
||||
}
|
||||
};
|
||||
var runtime;
|
||||
jinja.compile = function(markup, opts) {
|
||||
opts = opts || {};
|
||||
var parser = new Parser;
|
||||
parser.readTemplateFile = this.readTemplateFile;
|
||||
var code = [];
|
||||
code.push("function render($) {");
|
||||
code.push("var get = $.get, set = $.set, push = $.push, pop = $.pop, write = $.write, filter = $.filter, each = $.each, block = $.block;");
|
||||
code.push.apply(code, parser.parse(markup));
|
||||
code.push("return $.render();");
|
||||
code.push("}");
|
||||
code = code.join("\n");
|
||||
if (opts.runtime === false) {
|
||||
var fn = new Function("data", "options", "return (" + code + ")(runtime(data, options))")
|
||||
} else {
|
||||
runtime = runtime || (runtime = getRuntime.toString());
|
||||
fn = new Function("data", "options", "return (" + code + ")((" + runtime + ")(data, options))")
|
||||
}
|
||||
return {
|
||||
render: fn
|
||||
}
|
||||
};
|
||||
jinja.render = function(markup, data, opts) {
|
||||
var tmpl = jinja.compile(markup);
|
||||
return tmpl.render(data, opts)
|
||||
};
|
||||
jinja.templateFiles = [];
|
||||
jinja.readTemplateFile = function(name) {
|
||||
var templateFiles = this.templateFiles || [];
|
||||
var templateFile = templateFiles[name];
|
||||
if (templateFile == null) {
|
||||
throw new Error("Template file not found: " + name)
|
||||
}
|
||||
return templateFile
|
||||
};
|
||||
|
||||
function trimLeft(str) {
|
||||
return str.replace(LEADING_SPACE, "")
|
||||
}
|
||||
|
||||
function trimRight(str) {
|
||||
return str.replace(TRAILING_SPACE, "")
|
||||
}
|
||||
|
||||
function matchAll(str, reg, fn) {
|
||||
reg = new RegExp(reg.source, "g" + (reg.ignoreCase ? "i" : "") + (reg.multiline ? "m" : ""));
|
||||
var match;
|
||||
while (match = reg.exec(str)) {
|
||||
var result = fn(match[0], match.index, str);
|
||||
if (typeof result == "number") {
|
||||
reg.lastIndex = result
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1,360 +0,0 @@
|
||||
/*
|
||||
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
|
||||
* This devtool is neither made for production nor for readable output files.
|
||||
* It uses "eval()" calls to create a separate source file in the browser devtools.
|
||||
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
|
||||
* or disable the default devtool with "devtool: false".
|
||||
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
|
||||
*/
|
||||
(function webpackUniversalModuleDefinition(root, factory) {
|
||||
if (typeof exports === 'object' && typeof module === 'object') {
|
||||
// CommonJS
|
||||
module.exports = exports = factory();
|
||||
} else if (typeof define === 'function' && define.amd) {
|
||||
// AMD
|
||||
define([], factory);
|
||||
} else {
|
||||
// Global (browser)
|
||||
globalThis.JSEncrypt = factory();
|
||||
}
|
||||
})(this, () => {
|
||||
return /******/ (() => { // webpackBootstrap
|
||||
/******/
|
||||
var __webpack_modules__ = ({
|
||||
|
||||
/***/
|
||||
"./lib/JSEncrypt.js":
|
||||
/*!**************************!*\
|
||||
!*** ./lib/JSEncrypt.js ***!
|
||||
\**************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n
Line truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/JSEncryptRSAKey.js":
|
||||
/*!********************************!*\
|
||||
!*** ./lib/JSEncryptRSAKey.js ***!
|
||||
\********************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL
Line truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/index.js":
|
||||
/*!**********************!*\
|
||||
!*** ./lib/index.js ***!
|
||||
\**********************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/asn1js/asn1.js":
|
||||
/*!********************************!*\
|
||||
!*** ./lib/lib/asn1js/asn1.js ***!
|
||||
\********************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini <lapo@lapo.it>\n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shoLine truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/asn1js/base64.js":
|
||||
/*!**********************************!*\
|
||||
!*** ./lib/lib/asn1js/base64.js ***!
|
||||
\**********************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini <lapo@lapo.it>\n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/asn1js/hex.js":
|
||||
/*!*******************************!*\
|
||||
!*** ./lib/lib/asn1js/hex.js ***!
|
||||
\*******************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini <lapo@lapo.it>\n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/asn1js/int10.js":
|
||||
/*!*********************************!*\
|
||||
!*** ./lib/lib/asn1js/int10.js ***!
|
||||
\*********************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini <lapo@lapo.it>\n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/base64.js":
|
||||
/*!********************************!*\
|
||||
!*** ./lib/lib/jsbn/base64.js ***!
|
||||
\********************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/jsbn.js":
|
||||
/*!******************************!*\
|
||||
!*** ./lib/lib/jsbn/jsbn.js ***!
|
||||
\******************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.protot
Line truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/prng4.js":
|
||||
/*!*******************************!*\
|
||||
!*** ./lib/lib/jsbn/prng4.js ***!
|
||||
\*******************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/rng.js":
|
||||
/*!*****************************!*\
|
||||
!*** ./lib/lib/jsbn/rng.js ***!
|
||||
\*****************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/rsa.js":
|
||||
/*!*****************************!*\
|
||||
!*** ./lib/lib/jsbn/rsa.js ***!
|
||||
\*****************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E,
Line truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsbn/util.js":
|
||||
/*!******************************!*\
|
||||
!*** ./lib/lib/jsbn/util.js ***!
|
||||
\******************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsrsasign/asn1-1.0.js":
|
||||
/*!***************************************!*\
|
||||
!*** ./lib/lib/jsrsasign/asn1-1.0.js ***!
|
||||
\***************************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license <a href=\"https://kjur.github.io/jsrsasign/license/\">MIT License</a>\n */\n/**\n * kjur's class library name space\n * <p>\n * This name space provides following name spaces:\n * <ul>\n * <li>{@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder</li>\n * <li>{@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL</li>\n * <li>{@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities</li>\n * </ul>\n * </p>\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n * <p>\n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n * <h4>PROVIDING ASN.1 PRIMITIVES</h4>\n * Here are ASN.1 DER primitive classes.\n * <ul>\n * <li>0x01 {@link KJUR.asn1.DERBoolean}</li>\n * <li>0x02 {@link KJUR.asn1.DERInteger}</li>\n * <li>0x03 {@link KJUR.asn1.DERBitString}</li>\n * <li>0x04 {@link KJUR.asn1.DEROctetString}</li>\n * <li>0x05 {@link KJUR.asn1.DERNull}</li>\n * <li>0x06 {@link KJUR.asn1.DERObjectIdentifier}</li>\n * <li>0x0a {@link KJUR.asn1.DEREnumerated}</li>\n * <li>0x0c {@link KJUR.asn1.DERUTF8String}</li>\n * <li>0x12 {@link KJUR.asn1.DERNumericString}</li>\n * <li>0x13 {@link KJUR.asn1.DERPrintableString}</li>\n * <li>0x14 {@link KJUR.asn1.DERTeletexString}</li>\n * <li>0x16 {@link KJUR.asn1.DERIA5String}</li>\n * <li>0x17 {@link KJUR.asn1.DERUTCTime}</li>\n * <li>0x18 {@link KJUR.asn1.DERGeneralizedTime}</li>\n * <li>0x30 {@link KJUR.asn1.DERSequence}</li>\n * <li>0x31 {@link KJUR.asn1.DERSet}</li>\n * </ul>\n * <h4>OTHER ASN.1 CLASSES</h4>\n * <ul>\n * <li>{@link KJUR.asn1.ASN1Object}</li>\n * <li>{@link KJUR.asn1.DERAbstractString}</li>\n * <li>{@link KJUR.asn1.DERAbstractTime}</li>\n * <li>{@link KJUR.asn1.DERAbstractStructured}</li>\n * <li>{@link KJUR.asn1.DERTaggedObject}</li>\n * </ul>\n * <h4>SUB NAME SPACES</h4>\n * <ul>\n * <li>{@link KJUR.asn1.cades} - CAdES long term signature format</li>\n * <li>{@link KJUR.asn1.cms} - Cryptographic Message Syntax</li>\n * <li>{@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)</li>\n * <li>{@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format</li>\n * <li>{@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL</li>\n * </ul>\n * </p>\n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n
Line truncated
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./lib/lib/jsrsasign/yahoo.js":
|
||||
/*!************************************!*\
|
||||
!*** ./lib/lib/jsrsasign/yahoo.js ***!
|
||||
\************************************/
|
||||
/***/
|
||||
((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?");
|
||||
|
||||
/***/
|
||||
}),
|
||||
|
||||
/***/
|
||||
"./node_modules/process/browser.js":
|
||||
/*!*****************************************!*\
|
||||
!*** ./node_modules/process/browser.js ***!
|
||||
\*****************************************/
|
||||
/***/
|
||||
((module) => {
|
||||
|
||||
eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess
Line truncated
|
||||
|
||||
/***/
|
||||
})
|
||||
|
||||
/******/
|
||||
});
|
||||
/************************************************************************/
|
||||
/******/ // The module cache
|
||||
/******/
|
||||
var __webpack_module_cache__ = {};
|
||||
/******/
|
||||
/******/ // The require function
|
||||
/******/
|
||||
function __webpack_require__(moduleId) {
|
||||
/******/ // Check if module is in cache
|
||||
/******/
|
||||
var cachedModule = __webpack_module_cache__[moduleId];
|
||||
/******/
|
||||
if (cachedModule !== undefined) {
|
||||
/******/
|
||||
return cachedModule.exports;
|
||||
/******/
|
||||
}
|
||||
/******/ // Create a new module (and put it into the cache)
|
||||
/******/
|
||||
var module = __webpack_module_cache__[moduleId] = {
|
||||
/******/ // no module.id needed
|
||||
/******/ // no module.loaded needed
|
||||
/******/
|
||||
exports: {}
|
||||
/******/
|
||||
};
|
||||
/******/
|
||||
/******/ // Execute the module function
|
||||
/******/
|
||||
__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
||||
/******/
|
||||
/******/ // Return the exports of the module
|
||||
/******/
|
||||
return module.exports;
|
||||
/******/
|
||||
}
|
||||
/******/
|
||||
/************************************************************************/
|
||||
/******/
|
||||
/* webpack/runtime/define property getters */
|
||||
/******/
|
||||
(() => {
|
||||
/******/ // define getter functions for harmony exports
|
||||
/******/
|
||||
__webpack_require__.d = (exports, definition) => {
|
||||
/******/
|
||||
for (var key in definition) {
|
||||
/******/
|
||||
if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
||||
/******/
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: definition[key]
|
||||
});
|
||||
/******/
|
||||
}
|
||||
/******/
|
||||
}
|
||||
/******/
|
||||
};
|
||||
/******/
|
||||
})();
|
||||
/******/
|
||||
/******/
|
||||
/* webpack/runtime/hasOwnProperty shorthand */
|
||||
/******/
|
||||
(() => {
|
||||
/******/
|
||||
__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
||||
/******/
|
||||
})();
|
||||
/******/
|
||||
/******/
|
||||
/* webpack/runtime/make namespace object */
|
||||
/******/
|
||||
(() => {
|
||||
/******/ // define __esModule on exports
|
||||
/******/
|
||||
__webpack_require__.r = (exports) => {
|
||||
/******/
|
||||
if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
||||
/******/
|
||||
Object.defineProperty(exports, Symbol.toStringTag, {
|
||||
value: 'Module'
|
||||
});
|
||||
/******/
|
||||
}
|
||||
/******/
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true
|
||||
});
|
||||
/******/
|
||||
};
|
||||
/******/
|
||||
})();
|
||||
/******/
|
||||
/************************************************************************/
|
||||
/******/
|
||||
/******/ // startup
|
||||
/******/ // Load entry module and return exports
|
||||
/******/ // This entry module can't be inlined because the eval devtool is used.
|
||||
/******/
|
||||
var __webpack_exports__ = __webpack_require__("./lib/index.js");
|
||||
/******/
|
||||
__webpack_exports__ = __webpack_exports__["default"];
|
||||
/******/
|
||||
/******/
|
||||
return __webpack_exports__;
|
||||
/******/
|
||||
})();
|
||||
});
|
||||
Vendored
-1277
File diff suppressed because it is too large.
Load diff
Vendored
-1
@@ -1 +0,0 @@
|
||||
(function(global){var re={starts_with_slashes:/^\/+/,ends_with_slashes:/\/+$/,pluses:/\+/g,query_separator:/[&;]/,uri_parser:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@]*))?)?@)?(\[[0-9a-fA-F:.]+\]|[^:\/?#]*)(?::(\d+|(?=:)))?(:)?)((((?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/};if(!Array.prototype.forEach){Array.prototype.forEach=function(callback,thisArg){var T,k;if(this==null){throw new TypeError(' this is null or not defined');}var O=Object(this);var len=O.length>>>0;if(typeof callback!=="function"){throw new TypeError(callback+' is not a function');}if(arguments.length>1){T=thisArg}k=0;while(k<len){var kValue;if(k in O){kValue=O[k];callback.call(T,kValue,k,O)}k++}}}function decode(s){if(s){s=s.toString().replace(re.pluses,'%20');s=decodeURIComponent(s)}return s}function parseUri(str){var parser=re.uri_parser;var parserKeys=["source","protocol","authority","userInfo","user","password","host","port","isColonUri","relative","path","directory","file","query","anchor"];var m=parser.exec(str||'');var parts={};parserKeys.forEach(function(key,i){parts[key]=m[i]||''});return parts}function parseQuery(str){var i,ps,p,n,k,v,l;var pairs=[];if(typeof(str)==='undefined'||str===null||str===''){return pairs}if(str.indexOf('?')===0){str=str.substring(1)}ps=str.toString().split(re.query_separator);for(i=0,l=ps.length;i<l;i++){p=ps[i];n=p.indexOf('=');if(n!==0){k=decode(p.substring(0,n));v=decode(p.substring(n+1));pairs.push(n===-1?[p,null]:[k,v])}}return pairs}function Uri(str){this.uriParts=parseUri(str);this.queryPairs=parseQuery(this.uriParts.query);this.hasAuthorityPrefixUserPref=null}['protocol','userInfo','host','port','path','anchor'].forEach(function(key){Uri.prototype[key]=function(val){if(typeof val!=='undefined'){this.uriParts[key]=val}return this.uriParts[key]}});Uri.prototype.hasAuthorityPrefix=function(val){if(typeof val!=='undefined'){this.hasAuthorityPrefixUserPref=val}if(this.hasAuthorityPrefixUserPref===null){return(this.uriParts.source.indexOf('//')!==-1)}else{return this.hasAuthorityPrefixUserPref}};Uri.prototype.isColonUri=function(val){if(typeof val!=='undefined'){this.uriParts.isColonUri=!!val}else{return!!this.uriParts.isColonUri}};Uri.prototype.query=function(val){var s='',i,param,l;if(typeof val!=='undefined'){this.queryPairs=parseQuery(val)}for(i=0,l=this.queryPairs.length;i<l;i++){param=this.queryPairs[i];if(s.length>0){s+='&'}if(param[1]===null){s+=param[0]}else{s+=param[0];s+='=';if(typeof param[1]!=='undefined'){s+=encodeURIComponent(param[1])}}}return s.length>0?'?'+s:s};Uri.prototype.getQueryParamValue=function(key){var param,i,l;for(i=0,l=this.queryPairs.length;i<l;i++){param=this.queryPairs[i];if(key===param[0]){return param[1]}}};Uri.prototype.getQueryParamValues=function(key){var arr=[],i,param,l;for(i=0,l=this.queryPairs.length;i<l;i++){param=this.queryPairs[i];if(key===param[0]){arr.push(param[1])}}return arr};Uri.prototype.deleteQueryParam=function(key,val){var arr=[],i,param,keyMatchesFilter,valMatchesFilter,l;for(i=0,l=this.queryPairs.length;i<l;i++){param=this.queryPairs[i];keyMatchesFilter=decode(param[0])===decode(key);valMatchesFilter=param[1]===val;if((arguments.length===1&&!keyMatchesFilter)||(arguments.length===2&&(!keyMatchesFilter||!valMatchesFilter))){arr.push(param)}}this.queryPairs=arr;return this};Uri.prototype.addQueryParam=function(key,val,index){if(arguments.length===3&&index!==-1){index=Math.min(index,this.queryPairs.length);this.queryPairs.splice(index,0,[key,val])}else if(arguments.length>0){this.queryPairs.push([key,val])}return this};Uri.prototype.hasQueryParam=function(key){var i,len=this.queryPairs.length;for(i=0;i<len;i++){if(this.queryPairs[i][0]==key)return true}return false};Uri.prototype.replaceQueryParam=function(key,newVal,oldVal){var index=-1,len=this.queryPairs.length,i,param;if(arguments.length===3){for(i=0;i<len;i++){param=this.queryPairs[i];if(decode(param[0])===decode(key)&&decodeURIComponent(param[1])===decode(oldVal)){index=i;break}}if(index>=0){this.deleteQueryParam(key,decode(oldVal)).addQueryParam(key,newVal,index)}}else{for(i=0;i<len;i++){param=this.queryPairs[i];if(decode(param[0])===decode(key)){index=i;break}}this.deleteQueryParam(key);this.addQueryParam(key,newVal,index)}return this};['protocol','hasAuthorityPrefix','isColonUri','userInfo','host','port','path','query','anchor'].forEach(function(key){var method='set'+key.charAt(0).toUpperCase()+key.slice(1);Uri.prototype[method]=function(val){this[key](val);return this}});Uri.prototype.scheme=function(){var s='';if(this.protocol()){s+=this.protocol();if(this.protocol().indexOf(':')!==this.protocol().length-1){s+=':'}s+='//'}else{if(this.hasAuthorityPrefix()&&this.host()){s+='//'}}return s};Uri.prototype.origin=function(){var s=this.scheme();if(this.userInfo()&&this.host()){s+=this.userInfo();if(this.userInfo().indexOf('@')!==this.userInfo().length-1){s+='@'}}if(this.host()){s+=this.host();if(this.port()||(this.pathLine truncated
|
||||
@@ -1,12 +0,0 @@
|
||||
Object.assign(muban.mxpro.二级, {
|
||||
tab_text: 'div--small&&Text',
|
||||
});
|
||||
var rule = {
|
||||
模板: 'mxpro',
|
||||
title: '剧圈圈',
|
||||
host: 'https://www.jqqzx.cc/',
|
||||
url: '/vodshow/id/fyclass/page/fypage.html',
|
||||
searchUrl: '/vodsearch**/page/fypage.html',
|
||||
class_parse: '.navbar-items li:gt(2):lt(8);a&&Text;a&&href;.*/(.*?)\.html',
|
||||
cate_exclude: '今日更新|热榜',
|
||||
}
|
||||
-1100
File diff suppressed because it is too large.
Load diff
@@ -1,64 +0,0 @@
|
||||
var rule = {
|
||||
author: '小可乐/240526/第一版',
|
||||
title: '动漫巴士[漫]',
|
||||
host: 'http://dm84.site',
|
||||
hostJs: 'print(HOST);let html=request(HOST,{headers:{"User-Agent":MOBILE_UA}});let src= jsp.pdfh(html,"ul&&a:eq(0)&&href");print(src);HOST=src',
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA'
|
||||
},
|
||||
编码: 'utf-8',
|
||||
timeout: 5000,
|
||||
|
||||
homeUrl: '/',
|
||||
url: '/show-fyclass--fyfilter-fypage.html',
|
||||
filter_url: '{{fl.by}}-{{fl.class}}--{{fl.year}}',
|
||||
detailUrl: '',
|
||||
searchUrl: '/s-**---------fypage.html',
|
||||
searchable: 1,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
|
||||
class_name: '国产动漫&日本动漫&欧美动漫&电影',
|
||||
class_url: '1&2&3&4',
|
||||
filter_def: {},
|
||||
|
||||
proxy_rule: '',
|
||||
sniffer: 0,
|
||||
isVideo: '',
|
||||
play_parse: true,
|
||||
parse_url: '',
|
||||
lazy: `js:
|
||||
let html = request(input);
|
||||
let kurl = pdfh(html,'body&&iframe').match(/src="(.*?)"/)[1];
|
||||
input= kurl
|
||||
`,
|
||||
|
||||
limit: 9,
|
||||
double: false,
|
||||
推荐: '*',
|
||||
//列表;标题;图片;描述;链接;详情(可不写)
|
||||
一级: '.v_list li;a&&title;a&&data-bg;.desc&&Text;a&&href',
|
||||
二级: {
|
||||
//名称;类型
|
||||
"title": "h1&&Text;meta[name*=class]&&content",
|
||||
//图片
|
||||
"img": "img&&src",
|
||||
//主要描述;年份;地区;演员;导演
|
||||
"desc": "meta[name*=update_date]&&content;meta[name*=release_date]&&content;meta[name*=area]&&content;meta[name*=actor]&&content;meta[name*=director]&&content",
|
||||
//简介
|
||||
"content": "p:eq(-2)&&Text",
|
||||
//线路数组
|
||||
"tabs": ".tab_control&&li",
|
||||
//线路标题
|
||||
"tab_text": "body&&Text",
|
||||
//播放数组 选集列表
|
||||
"lists": ".play_list:eq(#id)&&a",
|
||||
//选集标题
|
||||
"list_text": "body&&Text",
|
||||
//选集链接
|
||||
"list_url": "a&&href"
|
||||
},
|
||||
搜索: '*',
|
||||
|
||||
filter: 'H4sIAAAAAAAAA+2WbUsqQRTH3+/HmNe+0LWn21eJXlgIRU+Q3UBEsLTaCrYtSm9cb2RQ2YOVFUFa9mWcGf0Wjc6cMxPFstDlcgXf7e/39+zo2XPUlEUiZHTMSpGZeJKMksnZWCJBQmQ+NhcXyKt1erQteDk2+1OIsRSZF5quldvZckcLIOmQsqcb9LmurALImPOL5QsqUwAZd3O6TgFmF2+tpy3IJGB2vmvUScDzKmfNxjGcJwHrspVWKQN1EiBrZV55w1WZArynd8Svd+GeEvCzb5VZZoW9XPF97ICp0uPpEDY5GY8t6h6zwlO78Biwx3bYHlCue2n4qPZR00e0j5je1t42fVj7sOEjP9CLS8OPaD9i+mHth00/pP2Q6Qe1H/zYr4mk0S13j9Z2PnVLN1HA0rR4Kdy5Wauxu32VTE0vJfSzvs1RZ10licmFxXjnWGs8ZBH7r+3E+l778AImQkKQnfDbJeq59OYKMgl6Dqv0rYAT2AU877hEf1fgPAlBdoIVa+LdQZ2EIDvBVq95HjMJmN3XWc6BTAK+l8MG9SBTgHUrHsvkoU4CZm6Ze/A8Fei6be5Usa4LmD2U2n9O+MElxMj9re2prY3+z1vr92vlW+e3mT7b9+UW9ee5l+Z54F/Ms/ib0nwt6v8sHfj2POeLdPMc6iQE+eb3nWenyrJrcJ6E/jz3zjxb6XeqCRqqbAwAAA=='
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
var rule = {
|
||||
title: '动画片大全',
|
||||
host: 'https://www.dhpdq2.com/',
|
||||
url: 'https://www.dhpdq2.com/katong/fyclass-fypage/',
|
||||
searchUrl: '/vodsearch/**----------fypage---/',
|
||||
class_parse: '.c_class li;a&&Text;a&&href;.*/(.*?)/',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
},
|
||||
play_parse: true,
|
||||
lazy: '',
|
||||
limit: 6,
|
||||
推荐: '.stui-vodlist;li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
double: true,
|
||||
一级: '.stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
二级: {
|
||||
title: 'h1&&Text;.detail_list&&ul:eq(1)&&li&&a:eq(2)&&Text',
|
||||
img: '.vodlist_thumb&&data-original',
|
||||
desc: '.playinfo&&p:eq(0)&&Text;.playinfo&&p:eq(1)&&Text;.playinfo&&p:eq(2)&&Text;.playinfo&&p:eq(3)&&Text',
|
||||
content: '.content:eq(1)',
|
||||
tabs: '.relatesdh .title h3',
|
||||
lists: '.relatesdh:eq(#id) li',
|
||||
},
|
||||
搜索: '*',
|
||||
}
|
||||
-1127
File diff suppressed because it is too large.
Load diff
-1164
File diff suppressed because it is too large.
Load diff
@@ -1,29 +0,0 @@
|
||||
var rule = {
|
||||
title: '好看动漫',
|
||||
host: 'https://www.youjiula.com/',
|
||||
url: 'https://www.youjiula.com/youjiu/fyclass-fypage.html',
|
||||
searchUrl: 'https://www.youjiula.com/search.php?page=fypage&searchword=**&searchtype=',
|
||||
searchable: 2, //是否启用全局搜索,
|
||||
quickSearch: 0, //是否启用快速搜索,
|
||||
filterable: 0, //是否启用分类筛选,
|
||||
headers: {
|
||||
'User-Agent': 'UC_UA', // "Cookie": ""
|
||||
}, // class_parse:'.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html',
|
||||
class_parse: '.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html',
|
||||
play_parse: true,
|
||||
lazy: '',
|
||||
limit: 6,
|
||||
推荐: 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href',
|
||||
double: true, // 推荐内容是否双层定位
|
||||
一级: '.stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
二级: {
|
||||
"title": ".stui-content__detail .title&&Text;.stui-content__detail p:eq(-2)&&Text",
|
||||
"img": ".stui-content__thumb .lazyload&&data-original",
|
||||
"desc": ".stui-content__detail p:eq(0)&&Text;.stui-content__detail p:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text",
|
||||
"content": "#desc&&Text",
|
||||
"tabs": ".stui-pannel-box h3",
|
||||
"lists": ".stui-content__playlist:eq(#id) li"
|
||||
},
|
||||
搜索: 'ul.stui-vodlist&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text',
|
||||
|
||||
}
|
||||
-278
@@ -1,278 +0,0 @@
|
||||
var rule = {
|
||||
title: '异世界动漫',
|
||||
host: 'https://www.dmmiku.com/',
|
||||
homeUrl: '/index.php/vod/show/id/22.html',
|
||||
// url:'/index.php/vod/show/class/fyclass/id/20/page/fypage.html',
|
||||
url: '/index.php/vod/show/fyclassfyfilter.html',
|
||||
filterable: 1,
|
||||
filter_url: '{{fl.type}}/id/20/page/fypage{{fl.year}}',
|
||||
filter: {
|
||||
"area/日本": [{
|
||||
"key": "type",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "OVA",
|
||||
"v": "/class/OVA"
|
||||
}, {
|
||||
"n": "剧场版",
|
||||
"v": "/class/剧场版"
|
||||
}, {
|
||||
"n": "无修",
|
||||
"v": "/class/BD无修"
|
||||
}, {
|
||||
"n": "萝莉",
|
||||
"v": "/class/萝莉"
|
||||
}, {
|
||||
"n": "学園",
|
||||
"v": "/class/学園"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "/class/后宫"
|
||||
}, {
|
||||
"n": "恋爱",
|
||||
"v": "/class/恋爱"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "/class/热血"
|
||||
}, {
|
||||
"n": "神魔",
|
||||
"v": "/class/神魔"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "/class/奇幻"
|
||||
}, {
|
||||
"n": "治愈",
|
||||
"v": "/class/治愈"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "/class/搞笑"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "/class/百合"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "/class/冒险"
|
||||
}, {
|
||||
"n": "魔法",
|
||||
"v": "/class/魔法"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "/class/机战"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "/class/战争"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "/class/犯罪"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "/class/悬疑"
|
||||
}, {
|
||||
"n": "推理",
|
||||
"v": "/class/推理"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "/class/科幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "/class/竞技"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "/class/运动"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "/class/耽美"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "/class/其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "/year/2008"
|
||||
}]
|
||||
}],
|
||||
"area/中國": [{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "/year/2008"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
searchUrl: '/index.php/vod/search/page/fypage/wd/**.html',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA'
|
||||
},
|
||||
timeout: 5000, //网站的全局请求超时,默认是3000毫秒
|
||||
class_name: '日漫&国漫',
|
||||
class_url: 'area/日本&area/中國',
|
||||
play_parse: true,
|
||||
lazy: `js:
|
||||
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
|
||||
var url = html.url;
|
||||
var from = html.from;
|
||||
if (html.encrypt == '1') {
|
||||
url = unescape(url)
|
||||
} else if (html.encrypt == '2') {
|
||||
url = unescape(base64Decode(url))
|
||||
}
|
||||
if (/m3u8|mp4/.test(url)) {
|
||||
input = url
|
||||
} else {
|
||||
var MacPlayerConfig={};
|
||||
eval(fetch(HOST + "/static/js/playerconfig.js").replace('var Mac','Mac'));
|
||||
var jx = MacPlayerConfig.player_list[from].parse;
|
||||
if (jx == '') {
|
||||
jx = MacPlayerConfig.parse
|
||||
};
|
||||
if (jx.startsWith("/")) {
|
||||
jx = "https:" + jx;
|
||||
}
|
||||
input={
|
||||
jx:0,
|
||||
url:jx+url,
|
||||
parse:1,
|
||||
header: JSON.stringify({
|
||||
'referer': HOST
|
||||
})
|
||||
}
|
||||
}
|
||||
`,
|
||||
limit: 6,
|
||||
// 图片来源:'@Referer=https://api.douban.com/@User-Agent=Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/113.0.0.0%20Safari/537.36',
|
||||
推荐: '*',
|
||||
一级: '.vodlist_wi&&li;.lazyload&&title;.lazyload&&data-original;.pic_text&&Text;a&&href',
|
||||
二级: {
|
||||
"title": "h2&&Text;li.data--span:eq(0)&&Text",
|
||||
"img": ".lazyload&&data-original",
|
||||
"desc": "li.data--span:eq(1)&&Text;;;li.data--span:eq(2)&&Text;li.data--span:eq(3)&&Text",
|
||||
"content": ".full_text&&span&&Text",
|
||||
"tabs": `js:
|
||||
TABS = [];
|
||||
let tabs = pdfa(html, '#NumTab&&a');
|
||||
tabs.forEach((it) => {
|
||||
TABS.push(pdfh(it, 'a&&alt'))
|
||||
});
|
||||
`,
|
||||
// "lists": ".content_playlist:not(.list_scroll):eq(#id) a"
|
||||
"lists": "div.playlist_full:eq(#id) li"
|
||||
},
|
||||
搜索: 'li.searchlist_item;*;*;*;*',
|
||||
}
|
||||
@@ -1,44 +0,0 @@
|
||||
var rule = {
|
||||
类型: '影视',
|
||||
title: '思古影视',
|
||||
host: 'https://siguyy.cn',
|
||||
url: '/show/fyclass--------fypage---/',
|
||||
searchUrl: 'https://siguyy.cn/search/-------------/?wd=**',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
timeout: 5000,
|
||||
play_parse: true,
|
||||
filterable: 0,
|
||||
class_name: '电影&电视剧&综艺&动漫',
|
||||
class_url: '1&2&3&4',
|
||||
lazy: `js:
|
||||
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;
|
||||
}
|
||||
`,
|
||||
headers: {
|
||||
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0",
|
||||
},
|
||||
推荐: '*',
|
||||
一级: '.container .flex.desktop-hover-effect;span&&Text;img&&data-original;p.truncate&&Text;a&&href',
|
||||
二级: {
|
||||
title: '.p-3.mobile&&Text',
|
||||
img: 'img&&data-original',
|
||||
desc: '.text-sm.py-1&&Text',
|
||||
content: '.text-secondary&&Text',
|
||||
tabs: '.flex.flex-row.gap-1.items-center',
|
||||
lists: '.flex.flex-column.overflow-auto.no-scrollbar&&li',
|
||||
tab_text: 'body&&Text',
|
||||
list_text: 'a&&Text',
|
||||
list_url: 'a&&href',
|
||||
},
|
||||
double: false,
|
||||
搜索: '.col-lg-6.col-md-12.mt-2.mb-2.cursor-pointer;.topic-details-title-sub.text-secondary&&Text;img&&data-original;.topic-details-title&&Text;a&&href',
|
||||
}
|
||||
-773
@@ -1,773 +0,0 @@
|
||||
// 发布页 https://acgfans.org/pub.html
|
||||
var rule = {
|
||||
title: '怡萱动漫',
|
||||
// host:'https://www.yxdmlove.com',
|
||||
host: 'https://acgfans.org/pub.html',
|
||||
hostJs: 'print(HOST);let html=request(HOST,{headers:{"User-Agent":PC_UA}});let src = jsp.pdfh(html,"p:eq(0)&&a&&Text");print(src);HOST=src', //网页域名根动态抓取js代码。通过HOST=赋值
|
||||
// url:'/category.html?channel=17&zhonglei=fyclass&orderby=pubdate&totalresult=2999&pageno=fypage',
|
||||
url: '/category.html?channel=17&zhonglei=fyclassfyfilter&pageno=fypage',
|
||||
filterable: 1, //是否启用分类筛选,
|
||||
filter_url: '&{{fl.by or "orderby=pubdate"}}&{{fl.year}}&{{fl.area}}&{{fl.sta}}&{{fl.class}}',
|
||||
filter: {
|
||||
"TV": [{
|
||||
"key": "sta",
|
||||
"name": "进度",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "status=连载中"
|
||||
}, {
|
||||
"n": "已完结",
|
||||
"v": "status=已完结"
|
||||
}, {
|
||||
"n": "未播放",
|
||||
"v": "status=未播放"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "area=日本"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "area=中国"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "area=欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "year=2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "year=2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "year=2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "year=2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "year=2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "year=2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "year=2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "year=2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "year=2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "year=2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "year=2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "year=2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "year=2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "year=2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "year=2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "year=2010"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "year=2010前"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "jqlx=冒险"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "jqlx=热血"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "jqlx=爱情"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "jqlx=搞笑"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "jqlx=后宫"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "jqlx=校园"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "jqlx=机战"
|
||||
}, {
|
||||
"n": "幻想",
|
||||
"v": "jqlx=幻想"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "jqlx=科幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "jqlx=竞技"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "jqlx=百合"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "jqlx=耽美"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "jqlx=悬疑"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "jqlx=剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "jqlx=战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "jqlx=恐怖"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "jqlx=运动"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "jqlx=动作"
|
||||
}, {
|
||||
"n": "童话",
|
||||
"v": "jqlx=童话"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "jqlx=历史"
|
||||
}, {
|
||||
"n": "真人",
|
||||
"v": "jqlx=真人"
|
||||
}, {
|
||||
"n": "女性向",
|
||||
"v": "jqlx=女性向"
|
||||
}, {
|
||||
"n": "泡面番",
|
||||
"v": "jqlx=泡面番"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "orderby=pubdate"
|
||||
}, {
|
||||
"n": "热度",
|
||||
"v": "orderby=click"
|
||||
}]
|
||||
}],
|
||||
"剧场版": [{
|
||||
"key": "sta",
|
||||
"name": "进度",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "status=连载中"
|
||||
}, {
|
||||
"n": "已完结",
|
||||
"v": "status=已完结"
|
||||
}, {
|
||||
"n": "未播放",
|
||||
"v": "status=未播放"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "area=日本"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "area=中国"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "area=欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "year=2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "year=2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "year=2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "year=2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "year=2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "year=2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "year=2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "year=2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "year=2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "year=2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "year=2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "year=2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "year=2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "year=2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "year=2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "year=2010"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "year=2010前"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "jqlx=冒险"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "jqlx=热血"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "jqlx=爱情"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "jqlx=搞笑"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "jqlx=后宫"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "jqlx=校园"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "jqlx=机战"
|
||||
}, {
|
||||
"n": "幻想",
|
||||
"v": "jqlx=幻想"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "jqlx=科幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "jqlx=竞技"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "jqlx=百合"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "jqlx=耽美"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "jqlx=悬疑"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "jqlx=剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "jqlx=战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "jqlx=恐怖"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "jqlx=运动"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "jqlx=动作"
|
||||
}, {
|
||||
"n": "童话",
|
||||
"v": "jqlx=童话"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "jqlx=历史"
|
||||
}, {
|
||||
"n": "真人",
|
||||
"v": "jqlx=真人"
|
||||
}, {
|
||||
"n": "女性向",
|
||||
"v": "jqlx=女性向"
|
||||
}, {
|
||||
"n": "泡面番",
|
||||
"v": "jqlx=泡面番"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "orderby=pubdate"
|
||||
}, {
|
||||
"n": "热度",
|
||||
"v": "orderby=click"
|
||||
}]
|
||||
}],
|
||||
"OVA": [{
|
||||
"key": "sta",
|
||||
"name": "进度",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "status=连载中"
|
||||
}, {
|
||||
"n": "已完结",
|
||||
"v": "status=已完结"
|
||||
}, {
|
||||
"n": "未播放",
|
||||
"v": "status=未播放"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "area=日本"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "area=中国"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "area=欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "year=2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "year=2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "year=2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "year=2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "year=2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "year=2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "year=2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "year=2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "year=2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "year=2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "year=2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "year=2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "year=2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "year=2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "year=2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "year=2010"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "year=2010前"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "jqlx=冒险"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "jqlx=热血"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "jqlx=爱情"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "jqlx=搞笑"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "jqlx=后宫"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "jqlx=校园"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "jqlx=机战"
|
||||
}, {
|
||||
"n": "幻想",
|
||||
"v": "jqlx=幻想"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "jqlx=科幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "jqlx=竞技"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "jqlx=百合"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "jqlx=耽美"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "jqlx=悬疑"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "jqlx=剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "jqlx=战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "jqlx=恐怖"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "jqlx=运动"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "jqlx=动作"
|
||||
}, {
|
||||
"n": "童话",
|
||||
"v": "jqlx=童话"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "jqlx=历史"
|
||||
}, {
|
||||
"n": "真人",
|
||||
"v": "jqlx=真人"
|
||||
}, {
|
||||
"n": "女性向",
|
||||
"v": "jqlx=女性向"
|
||||
}, {
|
||||
"n": "泡面番",
|
||||
"v": "jqlx=泡面番"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "orderby=pubdate"
|
||||
}, {
|
||||
"n": "热度",
|
||||
"v": "orderby=click"
|
||||
}]
|
||||
}],
|
||||
"其他": [{
|
||||
"key": "sta",
|
||||
"name": "进度",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "status=连载中"
|
||||
}, {
|
||||
"n": "已完结",
|
||||
"v": "status=已完结"
|
||||
}, {
|
||||
"n": "未播放",
|
||||
"v": "status=未播放"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "area=日本"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "area=中国"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "area=欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "year=2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "year=2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "year=2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "year=2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "year=2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "year=2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "year=2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "year=2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "year=2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "year=2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "year=2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "year=2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "year=2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "year=2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "year=2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "year=2010"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "year=2010前"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "jqlx=冒险"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "jqlx=热血"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "jqlx=爱情"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "jqlx=搞笑"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "jqlx=后宫"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "jqlx=校园"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "jqlx=机战"
|
||||
}, {
|
||||
"n": "幻想",
|
||||
"v": "jqlx=幻想"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "jqlx=科幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "jqlx=竞技"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "jqlx=百合"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "jqlx=耽美"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "jqlx=悬疑"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "jqlx=剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "jqlx=战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "jqlx=恐怖"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "jqlx=运动"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "jqlx=动作"
|
||||
}, {
|
||||
"n": "童话",
|
||||
"v": "jqlx=童话"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "jqlx=历史"
|
||||
}, {
|
||||
"n": "真人",
|
||||
"v": "jqlx=真人"
|
||||
}, {
|
||||
"n": "女性向",
|
||||
"v": "jqlx=女性向"
|
||||
}, {
|
||||
"n": "泡面番",
|
||||
"v": "jqlx=泡面番"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "orderby=pubdate"
|
||||
}, {
|
||||
"n": "热度",
|
||||
"v": "orderby=click"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
// filter_def:{
|
||||
// TV:{by:'orderby=pubdate'},
|
||||
// 剧场版:{by:'orderby=pubdate'},
|
||||
// OVA:{by:'orderby=pubdate'},
|
||||
// 其他:{by:'orderby=pubdate'}
|
||||
// },
|
||||
searchUrl: '/search.html?keyword=**&PageNo=fypage',
|
||||
searchable: 2, //是否启用全局搜索,
|
||||
headers: { //网站的请求头,完整支持所有的,常带ua和cookies
|
||||
'User-Agent': 'PC_UA',
|
||||
},
|
||||
class_name: 'TV&剧场版&OVA&其他',
|
||||
class_url: 'TV&剧场版&OVA&其他',
|
||||
play_parse: true,
|
||||
lazy: '',
|
||||
limit: 6,
|
||||
// 推荐:'.dhnew.adj li;*;*;*;*',
|
||||
推荐: '.dhnew.adj li;a&&title;img&&src;p:eq(-1)&&Text;a&&href',
|
||||
// 一级:'.dhnew li;a&&title;img&&src;p:eq(-1)&&Text;a&&href',
|
||||
一级: `js:
|
||||
let d = [];
|
||||
pdfh = jsp.pdfh;pdfa = jsp.pdfa;pd = jsp.pd;
|
||||
let html = '';
|
||||
let totalresult = getItem("totalresult_" + MY_CATE, '')
|
||||
if (totalresult == '') {
|
||||
html = request(input);
|
||||
totalresult = pdfh(html, ".pageinfo&&strong&&Text");
|
||||
setItem("totalresult_" + MY_CATE, totalresult)
|
||||
}
|
||||
input += '&totalresult=' + getItem("totalresult_" + MY_CATE, '');
|
||||
html = request(input);
|
||||
let list = pdfa(html, ".dhnew&&li");
|
||||
list.forEach(it => {
|
||||
d.push({
|
||||
title: pdfh(it, "a&&title"),
|
||||
desc: pdfh(it, "p:eq(-1)&&Text"),
|
||||
pic_url: pd(it, "img&&src"),
|
||||
url: pd(it, "a&&href")
|
||||
})
|
||||
});
|
||||
setResult(d)
|
||||
`,
|
||||
二级: {
|
||||
"title": "h1&&Text;.dhxx p:eq(4)&&Text",
|
||||
"img": ".anime-img&&img&&src",
|
||||
"desc": ".info1-left li:eq(1)&&Text;.dhxx p:eq(3)&&Text;.dhxx p:eq(2)&&Text;.info1-left li:eq(0)&&Text;.info1-left li:eq(2)&&Text",
|
||||
"content": ".info2--strong&&Text",
|
||||
"tabs": ".ol-select li",
|
||||
"lists": ".ol-content:eq(#id) li"
|
||||
},
|
||||
// 搜索:'*;*;*;p:eq(3)&&Text;*',
|
||||
搜索: '.dhnew li;a&&title;img&&src;p:eq(3)&&Text;a&&href',
|
||||
}
|
||||
-198
@@ -1,198 +0,0 @@
|
||||
var rule = {
|
||||
title: '爱看机器人[虫]',
|
||||
// host:'https://v.ikanbot.com',
|
||||
host: 'https://v.aikanbot.com',
|
||||
url: '/hot/index-fyclass-fyfilter-p-fypage.html[/hot/index-fyclass-fyfilter.html]',
|
||||
//https://www.ikanbot.com/search?q=%E6%96%97%E7%BD%97%E5%A4%A7&p=2
|
||||
// searchUrl:'/search?q=**&p=fypage',
|
||||
searchUrl: '/search?q=**&p=fypage[/search?q=**]',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
filterable: 1,
|
||||
filter_url: '{{fl.tag}}',
|
||||
图片来源: '@Referer=https://v.ikanbot.com/@User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36',
|
||||
filter: {
|
||||
"movie": [{
|
||||
"key": "tag",
|
||||
"name": "标签",
|
||||
"value": [{
|
||||
"n": "热门",
|
||||
"v": "热门"
|
||||
}, {
|
||||
"n": "最新",
|
||||
"v": "最新"
|
||||
}, {
|
||||
"n": "经典",
|
||||
"v": "经典"
|
||||
}, {
|
||||
"n": "豆瓣高分",
|
||||
"v": "豆瓣高分"
|
||||
}, {
|
||||
"n": "冷门佳片",
|
||||
"v": "冷门佳片"
|
||||
}, {
|
||||
"n": "华语",
|
||||
"v": "华语"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "欧美"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "治愈",
|
||||
"v": "治愈"
|
||||
}, {
|
||||
"n": "豆瓣top250",
|
||||
"v": "豆瓣top250"
|
||||
}]
|
||||
}],
|
||||
"tv": [{
|
||||
"key": "tag",
|
||||
"name": "标签",
|
||||
"value": [{
|
||||
"n": "热门",
|
||||
"v": "热门"
|
||||
}, {
|
||||
"n": "美剧",
|
||||
"v": "美剧"
|
||||
}, {
|
||||
"n": "英剧",
|
||||
"v": "英剧"
|
||||
}, {
|
||||
"n": "韩剧",
|
||||
"v": "韩剧"
|
||||
}, {
|
||||
"n": "日剧",
|
||||
"v": "日剧"
|
||||
}, {
|
||||
"n": "国产剧",
|
||||
"v": "国产剧"
|
||||
}, {
|
||||
"n": "港剧",
|
||||
"v": "港剧"
|
||||
}, {
|
||||
"n": "日本动画",
|
||||
"v": "日本动画"
|
||||
}, {
|
||||
"n": "综艺",
|
||||
"v": "综艺"
|
||||
}, {
|
||||
"n": "纪录片",
|
||||
"v": "纪录片"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
filter_def: {
|
||||
movie: {
|
||||
tag: '热门'
|
||||
},
|
||||
tv: {
|
||||
tag: '国产剧'
|
||||
},
|
||||
},
|
||||
filter获取方法: `
|
||||
let value = [];
|
||||
$('ul').eq(2).find('li').each(function() {
|
||||
// console.log($(this).text());
|
||||
let n = $(this).text().trim();
|
||||
value.push({
|
||||
'n': n, 'v': n
|
||||
});
|
||||
});
|
||||
// 电影执行:
|
||||
let data = {'movie': [{'key': 'tag', 'name': '标签', 'value': value}]};
|
||||
console.log(JSON.stringify(data));
|
||||
|
||||
//剧集执行:
|
||||
let data = {'tv': [{'key': 'tag', 'name': '标签', 'value': value}]};
|
||||
console.log(JSON.stringify(data));
|
||||
`,
|
||||
headers: {
|
||||
'User-Agent': 'PC_UA',
|
||||
},
|
||||
class_name: '电影&剧集',
|
||||
class_url: 'movie&tv',
|
||||
play_parse: true,
|
||||
double: true,
|
||||
tab_remove: ['wjm3u8', 'ikm3u8', 'sdm3u8', 'M3U8', 'jinyingm3u8', 'fsm3u8', 'ukm3u8'], //移除某个线路及相关的选集
|
||||
tab_order: ['bfzym3u8', '1080zyk', 'kuaikan', 'lzm3u8', 'ffm3u8', 'snm3u8', 'qhm3u8', 'gsm3u8', 'zuidam3u8', 'bjm3u8', 'wolong', 'xlm3u8', 'yhm3u8'], //线路顺序,按里面的顺序优先,没写的依次排后面
|
||||
tab_rename: {
|
||||
'bfzym3u8': '暴风',
|
||||
'1080zyk': '优质',
|
||||
'kuaikan': '快看',
|
||||
'lzm3u8': '量子',
|
||||
'ffm3u8': '非凡',
|
||||
'snm3u8': '索尼',
|
||||
'qhm3u8': '奇虎',
|
||||
'haiwaikan': '海外看',
|
||||
'gsm3u8': '光速',
|
||||
'zuidam3u8': '最大',
|
||||
'bjm3u8': '八戒',
|
||||
'wolong': '卧龙',
|
||||
'xlm3u8': '新浪',
|
||||
'yhm3u8': '樱花',
|
||||
'tkm3u8': '天空',
|
||||
'jsm3u8': '极速',
|
||||
'wjm3u8': '无尽',
|
||||
'sdm3u8': '闪电',
|
||||
'kcm3u8': '快车',
|
||||
'jinyingm3u8': '金鹰',
|
||||
'fsm3u8': '飞速',
|
||||
'tpm3u8': '淘片',
|
||||
'lem3u8': '鱼乐',
|
||||
'dbm3u8': '百度',
|
||||
'tomm3u8': '番茄',
|
||||
'ukm3u8': 'U酷',
|
||||
'ikm3u8': '爱坤',
|
||||
'hnzym3u8': '红牛资源',
|
||||
'hnm3u8': '红牛',
|
||||
'68zy_m3u8': '68',
|
||||
'kdm3u8': '酷点',
|
||||
'bdxm3u8': '北斗星',
|
||||
'hhm3u8': '豪华',
|
||||
'kbm3u8': '快播'
|
||||
}, //线路名替换如:lzm3u8替换为量子资源
|
||||
推荐: '.v-list;div.item;*;*;*;*', //这里可以为空,这样点播不会有内容
|
||||
// 一级:'.v-list&&div.item;p&&Text;img&&src;;a&&href', //一级的内容是推荐或者点播时候的一级匹配
|
||||
一级: '.v-list&&div.item;p&&Text;img&&data-src;;a&&href', //一级的内容是推荐或者点播时候的一级匹配
|
||||
// 二级:二级,
|
||||
二级: 'js:eval(unescape(base64Decode("anM6CiAgICAgICAgcGRmaCA9IGpzcC5wZGZoOwogICAgICAgIGZ1bmN0aW9uIGdldFRva2VuKGh0bWwxKSB7CiAgICAgICAgICAgIGxldCBjdXJyZW50SWQgPSBwZGZoKGh0bWwxLCAnI2N1cnJlbnRfaWQmJnZhbHVlJyk7CiAgICAgICAgICAgIGxldCBlVG9rZW4gPSBwZGZoKGh0bWwxLCAnI2VfdG9rZW4mJnZhbHVlJyk7CiAgICAgICAgICAgIGlmICghY3VycmVudElkIHx8ICFlVG9rZW4pIHJldHVybiAnJzsKICAgICAgICAgICAgbGV0IGlkTGVuZ3RoID0gY3VycmVudElkLmxlbmd0aDsKICAgICAgICAgICAgbGV0IHN1YklkID0gY3VycmVudElkLnN1YnN0cmluZyhpZExlbmd0aCAtIDQsIGlkTGVuZ3RoKTsKICAgICAgICAgICAgbGV0IGtleXMgPSBbXTsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdWJJZC5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgbGV0IGN1ckludCA9IHBhcnNlSW50KHN1YklkW2ldKTsKICAgICAgICAgICAgICAgIGxldCBzcGxpdFBvcyA9IGN1ckludCAlIDMgKyAxOwogICAgICAgICAgICAgICAga2V5c1tpXSA9IGVUb2tlbi5zdWJzdHJpbmcoc3BsaXRQb3MsIHNwbGl0UG9zICsgOCk7CiAgICAgICAgICAgICAgICBlVG9rZW4gPSBlVG9rZW4uc3Vic3RyaW5nKHNwbGl0UG9zICsgOCwgZVRva2VuLmxlbmd0aCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGtleXMuam9pbignJyk7CiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICAgIFZPRD17fTsKICAgICAgICAgICAgbGV0IGh0bWwxID0gcmVxdWVzdChpbnB1dCk7CiAgICAgICAgICAgIFZPRC52b2RfaWQgPSBwZGZoKGh0bWwxLCAnI2N1cnJlbnRfaWQmJnZhbHVlJyk7CiAgICAgICAgICAgIFZPRC52b2RfbmFtZSA9IHBkZmgoaHRtbDEsICdoMiYmVGV4dCcpOwogICAgICAgICAgICBWT0Qudm9kX3BpYyA9IHBkZmgoaHRtbDEsICcuaXRlbS1yb290JiZpbWcmJmRhdGEtc3JjJyk7CiAgICAgICAgICAgIFZPRC52b2RfYWN0b3IgPSBwZGZoKGh0bWwxLCAnLm1ldGE6ZXEoNCkmJlRleHQnKTsKICAgICAgICAgICAgVk9ELnZvZF9hcmVhID0gcGRmaChodG1sMSwgJy5tZXRhOmVxKDMpJiZUZXh0Jyk7CiAgICAgICAgICAgIFZPRC52b2RfeWVhciA9IHBkZmgoaHRtbDEsICcubWV0YTplcSgyKSYmVGV4dCcpOwogICAgICAgICAgICBWT0Qudm9kX3JlbWFya3MgPSAnJzsKICAgICAgICAgICAgVk9ELnZvZF9kaXJlY3RvciA9ICcnOwogICAgICAgICAgICBWT0Qudm9kX2NvbnRlbnQgPSBwZGZoKGh0bWwxLCAnI2xpbmUtdGlwcyYmVGV4dCcpOwogICAgICAgICAgICAvLyBsb2coVk9EKTsKICAgICAgICAgICAgdmFyIHZfdGtzID0gZ2V0VG9rZW4oaHRtbDEpOwogICAgICAgICAgICBsb2coJ3ZfdGtzID09PT4gJyArIHZfdGtzKTsKICAgICAgICAgICAgaW5wdXQgPSBIT1NUICsgJy9hcGkvZ2V0UmVzTj92aWRlb0lkPScgKyBpbnB1dC5zcGxpdCgnLycpLnBvcCgpICsgJyZtdHlwZT0yJnRva2VuPScrdl90a3M7CiAgICAgICAgICAgIGxldCBodG1sID0gcmVxdWVzdChpbnB1dCwgewogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzonTW96aWxsYS81LjAgKGlQaG9uZTsgQ1BVIGlQaG9uZSBPUyAxM18yXzMgbGlrZSBNYWMgT1MgWCkgQXBwbGVXZWJLaXQvNjA1LjEuMTUgKEtIVE1MLCBsaWtlIEdlY2tvKSBWZXJzaW9uLzEzLjAuMyBNb2JpbGUvMTVFMTQ4IFNhZmFyaS82MDQuMScsCiAgICAgICAgICAgICAgICAgICAgJ1JlZmVyZXInOiBNWV9VUkwsCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBwcmludChodG1sKTsKICAgICAgICAgICAgaHRtbCA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGxldCBlcGlzb2RlcyA9IGh0bWwuZGF0YS5saXN0OwogICAgICAgICAgICBsZXQgcGxheU1hcCA9IHt9OwogICAgICAgICAgICBpZiAodHlwZW9mIHBsYXlfdXJsID09PSAndW5kZWZpbmVkJykgewogICAgICAgICAgICAgICAgdmFyIHBsYXlfdXJsID0gJycKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgbWFwID0ge30KICAgICAgICAgICAgbGV0IGFyciA9IFtdCiAgICAgICAgICAgIGxldCBuYW1lID0gewogICAgICAgICAgICAgICAgJ2JmenltM3U4JzogJ+aatOmjjicsCiAgICAgICAgICAgICAgICAnMTA4MHp5ayc6ICfkvJjotKgnLAogICAgICAgICAgICAgICAgJ2t1YWlrYW4nOiAn5b+r55yLJywKICAgICAgICAgICAgICAgICdsem0zdTgnOiAn6YeP5a2QJywKICAgICAgICAgICAgICAgICdmZm0zdTgnOiAn6Z2e5YehJywKICAgICAgICAgICAgICAgICdoYWl3YWlrYW4nOiAn5rW35aSW55yLJywKICAgICAgICAgICAgICAgICdnc20zdTgnOiAn5YWJ6YCfJywKICAgICAgICAgICAgICAgICd6dWlkYW0zdTgnOiAn5pyA5aSnJywKICAgICAgICAgICAgICAgICdiam0zdTgnOiAn5YWr5oiSJywKICAgICAgICAgICAgICAgICdzbm0zdTgnOiAn57Si5bC8JywKICAgICAgICAgICAgICAgICd3b2xvbmcnOiAn5Y2n6b6ZJywKICAgICAgICAgICAgICAgICd4bG0zdTgnOiAn5paw5rWqJywKICAgICAgICAgICAgICAgICd5aG0zdTgnOiAn5qix6IqxJywKICAgICAgICAgICAgICAgICd0a20zdTgnOiAn5aSp56m6JywKICAgICAgICAgICAgICAgICdqc20zdTgnOiAn5p6B6YCfJywKICAgICAgICAgICAgICAgICd3am0zdTgnOiAn5peg5bC9JywKICAgICAgICAgICAgICAgICdzZG0zdTgnOiAn6Zeq55S1JywKICAgICAgICAgICAgICAgICdrY20zdTgnOiAn5b+r6L2mJywKICAgICAgICAgICAgICAgICdqaW55aW5nbTN1OCc6ICfph5HpubAnLAogICAgICAgICAgICAgICAgJ2ZzbTN1OCc6ICfpo57pgJ8nLAogICAgICAgICAgICAgICAgJ3RwbTN1OCc6ICfmt5jniYcnLAogICAgICAgICAgICAgICAgJ2xlbTN1OCc6ICfpsbzkuZAnLAogICAgICAgICAgICAgICAgJ2RibTN1OCc6ICfnmb7luqYnLAogICAgICAgICAgICAgICAgJ3RvbW0zdTgnOiAn55Wq6IyEJywKICAgICAgICAgICAgICAgICd1a20zdTgnOiAnVemFtycsCiAgICAgICAgICAgICAgICAnaWttM3U4JzogJ+eIseWdpCcsCiAgICAgICAgICAgICAgICAnaG56eW0zdTgnOiAn57qi54mb6LWE5rqQJywKICAgICAgICAgICAgICAgICdobm0zdTgnOiAn57qi54mbJywKICAgICAgICAgICAgICAgICc2OHp5X20zdTgnOiAnNjgnLAogICAgICAgICAgICAgICAgJ2tkbTN1OCc6ICfphbfngrknLAogICAgICAgICAgICAgICAgJ2JkeG0zdTgnOiAn5YyX5paX5pifJywKICAgICAgICAgICAgICAgICdxaG0zdTgnOiAn5aWH6JmOJywKICAgICAgICAgICAgICAgICdoaG0zdTgnOiAn6LGq5Y2OJwogICAgICAgICAgICB9OwogICAgICAgICAgICBlcGlzb2Rlcy5mb3JFYWNoKGZ1bmN0aW9uKGVwKSB7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UoZXBbJ3Jlc0RhdGEnXSk7CiAgICAgICAgICAgICAgICBkYXRhLm1hcCh2YWwgPT4gewogICAgICAgICAgICAgICAgICAgIGlmKCFtYXBbdmFsLmZsYWddKXsKICAgICAgICAgICAgICAgICAgICAgICAgbWFwW3ZhbC5mbGFnXSA9IFt2YWwudXJsLnJlcGxhY2VBbGwoJyMjJywnIycpXQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG1hcFt2YWwuZmxhZ10ucHVzaCh2YWwudXJsLnJlcGxhY2VBbGwoJyMjJywnIycpKQogICAgICAgICAgICAgICALine truncated
|
||||
// 搜索:'#search-result&&.media;h5&&a&&Text;a&&img&&data-src;.label&&Text;a&&href',//第三个是描述,一般显示更新或者完结
|
||||
搜索: '.col-md-8&&.media;h5&&a&&Text;a&&img&&data-src;.label&&Text;a&&href', //第三个是描述,一般显示更新或者完结
|
||||
lazy: `
|
||||
if(/\\.m3u8$/.test(input)){
|
||||
input = {
|
||||
parse:0,
|
||||
url:getProxyUrl()+'&url='+input,
|
||||
jx:0
|
||||
}
|
||||
}
|
||||
`,
|
||||
proxy_rule: `js:
|
||||
let url = input.url;
|
||||
let m3u8 = fixAdM3u8Ai(url);
|
||||
input = [200,'application/vnd.apple.mpegurl',m3u8]
|
||||
`
|
||||
}
|
||||
-815
@@ -1,815 +0,0 @@
|
||||
muban.短视2.二级.img = '.detail-pic&&img&&data-src';
|
||||
var rule = {
|
||||
title: '爱弹幕',
|
||||
模板: '短视2',
|
||||
host: 'https://anime.girigirilove.com',
|
||||
homeUrl: '/map/',
|
||||
// url:'/show/fyclass--------fypage---/'
|
||||
url: '/show/fyclassfyfilter/',
|
||||
filterable: 1, //是否启用分类筛选,
|
||||
filter_url: '-{{fl.area}}-{{fl.by}}-{{fl.class}}-{{fl.lang}}-{{fl.letter}}---fypage---{{fl.year}}',
|
||||
filter: {
|
||||
"2": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "后宫"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "百合"
|
||||
}, {
|
||||
"n": "乙女",
|
||||
"v": "乙女"
|
||||
}, {
|
||||
"n": "机甲",
|
||||
"v": "机甲"
|
||||
}, {
|
||||
"n": "日常",
|
||||
"v": "日常"
|
||||
}, {
|
||||
"n": "魔法少女",
|
||||
"v": "魔法少女"
|
||||
}, {
|
||||
"n": "异世界",
|
||||
"v": "异世界"
|
||||
}, {
|
||||
"n": "爱抖露",
|
||||
"v": "爱抖露"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "萌",
|
||||
"v": "萌"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "一月",
|
||||
"v": "一月"
|
||||
}, {
|
||||
"n": "四月",
|
||||
"v": "四月"
|
||||
}, {
|
||||
"n": "七月",
|
||||
"v": "七月"
|
||||
}, {
|
||||
"n": "十月",
|
||||
"v": "十月"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}, {
|
||||
"n": "2002",
|
||||
"v": "2002"
|
||||
}, {
|
||||
"n": "2001",
|
||||
"v": "2001"
|
||||
}, {
|
||||
"n": "2000",
|
||||
"v": "2000"
|
||||
}]
|
||||
}, {
|
||||
"key": "lang",
|
||||
"name": "语言",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日语",
|
||||
"v": "日语"
|
||||
}, {
|
||||
"n": "国语",
|
||||
"v": "国语"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"3": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "搞笑"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "后宫"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "内地",
|
||||
"v": "内地"
|
||||
}, {
|
||||
"n": "港台",
|
||||
"v": "港台"
|
||||
}, {
|
||||
"n": "日韩",
|
||||
"v": "日韩"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}]
|
||||
}, {
|
||||
"key": "lang",
|
||||
"name": "语言",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "国语",
|
||||
"v": "国语"
|
||||
}, {
|
||||
"n": "英语",
|
||||
"v": "英语"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"21": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "后宫"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "百合"
|
||||
}, {
|
||||
"n": "耽美",
|
||||
"v": "耽美"
|
||||
}, {
|
||||
"n": "机甲",
|
||||
"v": "机甲"
|
||||
}, {
|
||||
"n": "日常",
|
||||
"v": "日常"
|
||||
}, {
|
||||
"n": "魔法少女",
|
||||
"v": "魔法少女"
|
||||
}, {
|
||||
"n": "异世界",
|
||||
"v": "异世界"
|
||||
}, {
|
||||
"n": "爱抖露",
|
||||
"v": "爱抖露"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}]
|
||||
}, {
|
||||
"key": "lang",
|
||||
"name": "语言",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日语",
|
||||
"v": "日语"
|
||||
}, {
|
||||
"n": "中文",
|
||||
"v": "中文"
|
||||
}, {
|
||||
"n": "英语",
|
||||
"v": "英语"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"20": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "经典",
|
||||
"v": "经典"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "同性",
|
||||
"v": "同性"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "悬疑.惊悚",
|
||||
"v": "悬疑.惊悚"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "欧美"
|
||||
}, {
|
||||
"n": "歌舞",
|
||||
"v": "歌舞"
|
||||
}, {
|
||||
"n": "灾难",
|
||||
"v": "灾难"
|
||||
}, {
|
||||
"n": "记录.泰剧",
|
||||
"v": "记录.泰剧"
|
||||
}, {
|
||||
"n": "体育",
|
||||
"v": "体育"
|
||||
}, {
|
||||
"n": "烧脑",
|
||||
"v": "烧脑"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "欧美"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004.2003",
|
||||
"v": "2004.2003"
|
||||
}]
|
||||
}, {
|
||||
"key": "lang",
|
||||
"name": "语言",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "日语",
|
||||
"v": "日语"
|
||||
}, {
|
||||
"n": "英语",
|
||||
"v": "英语"
|
||||
}, {
|
||||
"n": "泰语",
|
||||
"v": "泰语"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"24": [{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"26": [{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
searchUrl: '/search/**----------fypage---/',
|
||||
class_name: '日番&美番&劇場版&真人番劇&BD副音軌&其他',
|
||||
class_url: '2&3&21&20&24&26',
|
||||
play_parse: true,
|
||||
lazy: `js:
|
||||
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
|
||||
var url = html.url;
|
||||
var from = html.from;
|
||||
var next = html.link_next;
|
||||
if (html.encrypt == '1') {
|
||||
url = unescape(url)
|
||||
} else if (html.encrypt == '2') {
|
||||
url = unescape(base64Decode(url))
|
||||
} else if (html.encrypt == '3') {
|
||||
url = url.substring(8, url.length);
|
||||
url = base64Decode(url);
|
||||
url = url.substring(8, (url.length) - 8)
|
||||
}
|
||||
if (/\\.m3u8|\\.mp4/.test(url)) {
|
||||
input = {
|
||||
jx: 0,
|
||||
url: url,
|
||||
parse: 0
|
||||
}
|
||||
} else {
|
||||
var paurl = request(HOST + '/static/player/' + from + '.js').match(/ src="(.*?)'/)[1];
|
||||
if (/https/.test(paurl)) {
|
||||
var purl = paurl + url + '&next=' + next + '&title=';
|
||||
input = {
|
||||
jx: 0,
|
||||
url: purl,
|
||||
parse: 1
|
||||
}
|
||||
}
|
||||
}
|
||||
`,
|
||||
推荐: '.border-box&&.public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
|
||||
double: false, // 推荐内容是否双层定位
|
||||
一级: '.border-box .public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
|
||||
搜索: '.row-right&&.search-box;.thumb-txt&&Text;.lazy&&data-src;.public-list-prb&&Text;a&&href',
|
||||
}
|
||||
-476
@@ -1,476 +0,0 @@
|
||||
var rule = {
|
||||
title: '瓜子',
|
||||
host: 'https://api.8utdtcq.com',
|
||||
url: '/App/IndexList/indexList',
|
||||
// homeUrl: 'http://124.222.116.5/homedata/home.json',
|
||||
searchUrl: '/App/Index/findMoreVod#**',
|
||||
searchable: 2,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
class_name: '电影&电视剧&动漫&综艺&短剧',
|
||||
class_url: '1&2&4&3&64',
|
||||
filter: 'H4sIAAAAAAAAA+2a7U4aQRSG/3sVht/bZHf5WnorjWlo4YfphwlqE2NMtGoLWIsmFbRi2qYqoBgxtVVR8GZ2duUuOmchfuDuDHI2xJhD4hGYyTzv7hlm57yZ6aFh/gpogefDL5y38Jq+fuc0vklO8eZAPJWMB5S7Te/j75JebR/ibyeTd8Z1H/9mMBiJLZZb8+WusW7GhC5q4F7jzP3+Qsh2qbXxSQjpdMGSWrsb1umhkNTpgr6mXM06a4qvqd0FS7KqJbv5VUgyLxfsRsHKHyos+9NauuR3U2HNE7bZUKyFHP/E0hXF+rPmfOEMp/A/+HS1dOT827m0cwd2ZgOvtrBjFatCtZ0u6Fz/qHDp4ly3u2BJ5mmRLRfM+ndxupdrrL6rWPkaTwLb+sVveA3ubatStbZ2+B2GAdDTbvGfeZ4X62h3uU+6883I9adbCtxXoqlkPOW1Erm1PeKVSFf1kBDhdPCBEpRRgn5QdBlF94OiySiaHxRVRvEj+1pMQuEdfKAYMorhByUqo0T9oERklAiaoqnPtDA7O5aRwgoPIQhBCDoEDQJ+aqgq55vnvyUSVJXjVGCqQFdBhwqKVNCmRiBEIRgQ8HMp1ossLRZTFR40CDqEIIQQhDCECIQoBAMCXpbRmywDZBkgywBZBsgyQJYBsgyQZYAsA2QZeFnW5rFVqIhT6ONzcXzylddj0aXpET8VWbZsNop25rOIE0Zn52PVzq9KKHoMfTH5IsuUJJgIlmKnj6z5RQkliqaUVtnZuYRioBMzt2LN5iUUfF4yJfkd01T0xaTXzXpGhtF8+MnY32SZCeKnWX2PNdZkvxn0TbPnmq3vTdnVoCeanT20G3uyn6ZLbvpeocdSE55LtEtbf2u0fX7BVtLCNTrxcjSBf7wVZ3lxKeHEE4mJUX6FPsDs+QMJbPz1WAqPau2vs7TYHvJGeU0N591Ie0z+1H80fluxxr7UyW8jv438Nk8S+W2D8NugghOnk/y2Lgr5bQ+kkN9GfpurBPLbHiKL/LaB+W2bDbNeYpmS0D7Q/dk3yzBBfzbNMkzInx2zDIM3EJ19rAyD9lzam1gZBu3tWX9P2HZehsGbe86mWIZBu3vXu3ChteOC6XsxIGsHAXs61k6IrJ0uCFk7niSydtxJZO146CBrxxNC1g5ZO0IKWTvdFLJ2bkkga4esnYFaO+bpAVTC2bJ1sS8854A/g9I2KuQk9DGU4Y71Ike5eEl9J4tKbwTs6ZTeQSq9uyBUenuSqPR2J1Hp7aGDSm9PCJXeVHoLKVR6d1Oo9L4lgUpvKr0He6rC2Rfziu4qI9yl6+iDFXCqIlfrgYQ+W8H3f3xj1gPJp+MVPZBcTlj0PSuoxkfAnkCNPzTzH+StPxCsRAAA',
|
||||
// limit: 6,
|
||||
//double: false,
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
let d = [];
|
||||
//console.log("wangzhi==="+input)
|
||||
var vod_id = input.split("/")[0];
|
||||
var vurl_id = input.split("/")[1];
|
||||
var resolution = input.split("?")[1]
|
||||
|
||||
function Encrypt(plainText) {
|
||||
let key = CryptoJS.enc.Utf8.parse("mvXBSW7ekreItNsT");
|
||||
let iv = CryptoJS.enc.Utf8.parse("2U3IrJL8szAKp0Fj");
|
||||
// 将文本加密为 AES/CBC/PKCS5Padding 格式
|
||||
let encrypted = CryptoJS.AES.encrypt(plainText, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC,
|
||||
padding: CryptoJS.pad.Pkcs7
|
||||
});
|
||||
|
||||
// 获取加密结果并转为 Hex 格式
|
||||
let encryptedHex = encrypted.ciphertext.toString(CryptoJS.enc.Hex);
|
||||
return encryptedHex.toUpperCase(); // 返回大写 Hex 格式
|
||||
}
|
||||
|
||||
function Decrypt(word, key, iv) {
|
||||
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
|
||||
|
||||
// 使用AES/CBC/PKCS5Padding模式进行解密
|
||||
let decrypt = CryptoJS.AES.decrypt({
|
||||
ciphertext: encryptedHexStr
|
||||
}, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC, // 使用CBC模式
|
||||
padding: CryptoJS.pad.Pkcs7 // 使用PKCS#7填充
|
||||
});
|
||||
|
||||
// 将解密后的数据转换为原始文本
|
||||
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
|
||||
|
||||
// 返回解密后的文本
|
||||
return decryptedStr;
|
||||
}
|
||||
var timestamp = new Date().getTime() / 1000; //log(timestamp)
|
||||
var t = timestamp.toString().split('.')[0]; //log(t)
|
||||
var request_key = JSON.stringify({
|
||||
"domain_type": "8",
|
||||
"vod_id": vod_id,
|
||||
"type": "play",
|
||||
"resolution": resolution,
|
||||
"vurl_id": vurl_id
|
||||
}); //log(request_key)
|
||||
var request_key2 = Encrypt(request_key); //log(request_key2)
|
||||
var signature = 'token_id=,token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79,phone_type=1,request_key=' + request_key2 + ',app_id=1,time=' + t + ',keys=ZH8gpdp9bxjuG2NK97sol3o7Uiz+9eVEaVMlE2Fk3j7EResM3YHnECZUH7BONNTjpy7RVNi/YimGuNYriC7Cmswv4PNYiFYzw9QhlqZKwNfCM6IUpFZ0T4rZx8G78zkv2tNVbfYC4qNQedGi07nWZ33dlSuVxROVfY5JxOWHMI0=*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br'; //log(signature)
|
||||
var signature2 = md5(signature); //log(signature2)
|
||||
var body = 'token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79&token_id=&phone_type=1&time=' + t + '&phone_model=xiaomi-22021211rc&keys=ZH8gpdp9bxjuG2NK97sol3o7Uiz%2B9eVEaVMlE2Fk3j7EResM3YHnECZUH7BONNTjpy7RVNi%2FYimGuNYriC7Cmswv4PNYiFYzw9QhlqZKwNfCM6IUpFZ0T4rZx8G78zkv2tNVbfYC4qNQedGi07nWZ33dlSuVxROVfY5JxOWHMI0%3D&request_key=' + request_key2 + '&signature=' + signature2 + '&app_id=1&ad_version=1'; //log(body)
|
||||
|
||||
var html = fetch('https://api.8utdtcq.com/App/Resource/VurlDetail/showOne', {
|
||||
headers: {
|
||||
'Cache-Control': 'no-cache',
|
||||
'Version': '2406025',
|
||||
'PackageName': 'com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f',
|
||||
'Ver': '1.9.2',
|
||||
'Referer': 'https://api.8utdtcq.com',
|
||||
'X-Customer-Client-Ip': '127.0.0.1',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
'Host': 'api.8utdtcq.com',
|
||||
'Connection': 'Keep-Alive',
|
||||
//'Accept-Encoding': 'gzip',
|
||||
'User-Agent': 'okhttp/3.12.0'
|
||||
},
|
||||
body: body,
|
||||
method: 'POST',
|
||||
rejectCoding: true
|
||||
}); //log(html)
|
||||
|
||||
var data = JSON.parse(html).data;
|
||||
// //console.log("dddddd====="+JSON.stringify(data))
|
||||
var response_key = data.response_key; //log(response_key)
|
||||
var keys = data.keys; //log(keys)
|
||||
|
||||
var bodykey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcKZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcWV9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdIDblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVMiMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUMWBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZK7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1bL3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oat5lYKfpe8k83ZA=="; //log(bodykey)
|
||||
var bodykeyiv = JSON.parse(RSA.decode(keys, bodykey)); //log(bodykeyiv)
|
||||
var key = CryptoJS.enc.Utf8.parse(bodykeyiv.key); //log(key)
|
||||
var iv = CryptoJS.enc.Utf8.parse(bodykeyiv.iv); //log(iv)
|
||||
var html2 = Decrypt(response_key, key, iv); //log(html2)
|
||||
var url = JSON.parse(html2).url; //log(url)
|
||||
input = {
|
||||
url: url,
|
||||
parse: 0,
|
||||
header: rule.headers
|
||||
}
|
||||
setResult(d)
|
||||
}),
|
||||
// 推荐: $js.toString(() => {
|
||||
// let d = [];
|
||||
// let data = JSON.parse(request(input))
|
||||
// data.forEach(item => {
|
||||
// item.datas.forEach(it => {
|
||||
// let id = `http://114.132.55.23/bl/mb/api.php/provide/vod/?ac=videolist&wd=${it.title}&`;
|
||||
// d.push({
|
||||
// url: id,
|
||||
// title: it.title,
|
||||
// img: it.pic,
|
||||
// desc: it.acr,
|
||||
// })
|
||||
// });
|
||||
// });
|
||||
// setResult(d)
|
||||
// }),
|
||||
一级: $js.toString(() => {
|
||||
let d = [];
|
||||
|
||||
function Encrypt(plainText) {
|
||||
let key = CryptoJS.enc.Utf8.parse("mvXBSW7ekreItNsT");
|
||||
let iv = CryptoJS.enc.Utf8.parse("2U3IrJL8szAKp0Fj");
|
||||
// 将文本加密为 AES/CBC/PKCS5Padding 格式
|
||||
let encrypted = CryptoJS.AES.encrypt(plainText, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC,
|
||||
padding: CryptoJS.pad.Pkcs7
|
||||
});
|
||||
|
||||
// 获取加密结果并转为 Hex 格式
|
||||
let encryptedHex = encrypted.ciphertext.toString(CryptoJS.enc.Hex);
|
||||
return encryptedHex.toUpperCase(); // 返回大写 Hex 格式
|
||||
}
|
||||
|
||||
function Decrypt(word, key, iv) {
|
||||
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
|
||||
|
||||
// 使用AES/CBC/PKCS5Padding模式进行解密
|
||||
let decrypt = CryptoJS.AES.decrypt({
|
||||
ciphertext: encryptedHexStr
|
||||
}, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC, // 使用CBC模式
|
||||
padding: CryptoJS.pad.Pkcs7 // 使用PKCS#7填充
|
||||
});
|
||||
|
||||
// 将解密后的数据转换为原始文本
|
||||
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
|
||||
|
||||
// 返回解密后的文本
|
||||
return decryptedStr;
|
||||
}
|
||||
|
||||
function getbody3(key, t) {
|
||||
var signature = 'token_id=,token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79,phone_type=1,request_key=' + key + ',app_id=1,time=' + t + ',keys=qDpotE2bedimK3QGqlyV5ieXXC3EhaPLQ+IOJyHnHflCj5w/7ESK7FgywMvrgjxbx0GklEFLI4+JshgySe633OIRstuktwdiCy3CT+fLSpuxBJDIlfXQDaeH3ig1wiB0JsZ601XHiFweGMu4tZfnSpHg3OnoL6nz/uurUif2OK4=*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br'; //log(signature)
|
||||
var signature2 = md5(signature).toUpperCase(); //log(signature2)
|
||||
var body = 'token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79&token_id=&phone_type=1&time=' + t + '&phone_model=xiaomi-22021211rc&keys=qDpotE2bedimK3QGqlyV5ieXXC3EhaPLQ%2BIOJyHnHflCj5w%2F7ESK7FgywMvrgjxbx0GklEFLI4%2BJshgySe633OIRstuktwdiCy3CT%2BfLSpuxBJDIlfXQDaeH3ig1wiB0JsZ601XHiFweGMu4tZfnSpHg3OnoL6nz%2FuurUif2OK4%3D&request_key=' + key + '&signature=' + signature2 + '&app_id=1&ad_version=1';
|
||||
return body
|
||||
}
|
||||
const bodykey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcKZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcWV9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdIDblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVMiMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUMWBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZK7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1bL3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oat5lYKfpe8k83ZA==";
|
||||
|
||||
function gethtml(u, body, headers) {
|
||||
var hd = fetch(u, {
|
||||
headers: headers,
|
||||
body: body,
|
||||
method: 'POST',
|
||||
rejectCoding: true
|
||||
});
|
||||
var banner = JSON.parse(hd).data;
|
||||
var response_key = banner.response_key; //log()
|
||||
var keys = banner.keys; //log(keys)
|
||||
var bodykeyiv = JSON.parse(RSA.decode(keys, bodykey));
|
||||
var key = CryptoJS.enc.Utf8.parse(bodykeyiv.key);
|
||||
var iv = CryptoJS.enc.Utf8.parse(bodykeyiv.iv);
|
||||
var html = Decrypt(response_key, key, iv);
|
||||
return html
|
||||
}
|
||||
|
||||
function hqsub(MY_CATE) {
|
||||
var subs = ["5", "12", "30", "22", ""]
|
||||
var tids = ["1", "2", "4", "3", "64"]
|
||||
let index = tids.indexOf(MY_CATE);
|
||||
if (index !== -1) {
|
||||
return subs[index];
|
||||
}
|
||||
return ""; // 或者根据需要返回其他值
|
||||
}
|
||||
var headers = {
|
||||
'Cache-Control': 'no-cache',
|
||||
'Version': '2406025',
|
||||
'PackageName': 'com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f',
|
||||
'Ver': '1.9.2',
|
||||
'Referer': 'https://api.8utdtcq.com',
|
||||
'X-Customer-Client-Ip': '127.0.0.1',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
'Host': 'api.8utdtcq.com',
|
||||
'Connection': 'Keep-Alive',
|
||||
//'Accept-Encoding': 'gzip',
|
||||
'User-Agent': 'okhttp/3.12.0'
|
||||
}
|
||||
var tid = MY_CATE;
|
||||
var sub = hqsub(MY_CATE)
|
||||
var timestamp = new Date().getTime() / 1000;
|
||||
var t = timestamp.toString().split('.')[0];
|
||||
var request_key = JSON.stringify({
|
||||
"area": (MY_FL.area || 0).toString(),
|
||||
"sub": (MY_FL.sub || sub).toString(),
|
||||
"year": (MY_FL.year || 0).toString(),
|
||||
"pageSize": "30",
|
||||
"sort": (MY_FL.sort || "d_id").toString(),
|
||||
"page": MY_PAGE,
|
||||
"tid": tid
|
||||
});
|
||||
var request_key2 = Encrypt(request_key);
|
||||
var body = getbody3(request_key2, t)
|
||||
var html2 = gethtml("https://api.8utdtcq.com/App/IndexList/indexList", body, headers)
|
||||
//console.log("tttttlieb=="+html2)
|
||||
var list = JSON.parse(html2).list; //log(list)
|
||||
list.forEach(data => {
|
||||
d.push({
|
||||
title: data.vod_name,
|
||||
desc: data.vod_continu == 0 ? '电影' : '更新至' + data.vod_continu + '集',
|
||||
year: data.vod_scroe,
|
||||
img: data.vod_pic,
|
||||
url: `${data.vod_id}/${data.vod_continu}`,
|
||||
})
|
||||
})
|
||||
setResult(d)
|
||||
}),
|
||||
二级: $js.toString(() => {
|
||||
// var d = [];
|
||||
function Encrypt(plainText) {
|
||||
let key = CryptoJS.enc.Utf8.parse("mvXBSW7ekreItNsT");
|
||||
let iv = CryptoJS.enc.Utf8.parse("2U3IrJL8szAKp0Fj");
|
||||
// 将文本加密为 AES/CBC/PKCS5Padding 格式
|
||||
let encrypted = CryptoJS.AES.encrypt(plainText, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC,
|
||||
padding: CryptoJS.pad.Pkcs7
|
||||
});
|
||||
|
||||
// 获取加密结果并转为 Hex 格式
|
||||
let encryptedHex = encrypted.ciphertext.toString(CryptoJS.enc.Hex);
|
||||
return encryptedHex.toUpperCase(); // 返回大写 Hex 格式
|
||||
}
|
||||
|
||||
function Decrypt(word, key, iv) {
|
||||
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
|
||||
|
||||
// 使用AES/CBC/PKCS5Padding模式进行解密
|
||||
let decrypt = CryptoJS.AES.decrypt({
|
||||
ciphertext: encryptedHexStr
|
||||
}, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC, // 使用CBC模式
|
||||
padding: CryptoJS.pad.Pkcs7 // 使用PKCS#7填充
|
||||
});
|
||||
|
||||
// 将解密后的数据转换为原始文本
|
||||
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
|
||||
|
||||
// 返回解密后的文本
|
||||
return decryptedStr;
|
||||
}
|
||||
|
||||
function getbody2(key, t) {
|
||||
var signature = 'token_id=,token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79,phone_type=1,request_key=' + key + ',app_id=1,time=' + t + ',keys=Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br'; //log(signature)
|
||||
var signature2 = md5(signature); //log(signature2)
|
||||
var body = 'token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79&token_id=&phone_type=1&time=' + t + '&phone_model=xiaomi-22021211rc&keys=Qmxi5ciWXbQzkr7o%2BSUNiUuQxQEf8%2FAVyUWY4T%2FBGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby%2B7GxXTktzJmxvneOUdYeHi%2BPZsThlvPI%3D&request_key=' + key + '&signature=' + signature2 + '&app_id=1&ad_version=1'; //log(body)
|
||||
return body
|
||||
}
|
||||
const bodykey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcKZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcWV9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdIDblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVMiMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUMWBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZK7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1bL3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oat5lYKfpe8k83ZA==";
|
||||
|
||||
function gethtml(u, body, headers) {
|
||||
var hd = fetch(u, {
|
||||
headers: headers,
|
||||
body: body,
|
||||
method: 'POST',
|
||||
rejectCoding: true
|
||||
});
|
||||
var banner = JSON.parse(hd).data;
|
||||
var response_key = banner.response_key; //log()
|
||||
var keys = banner.keys; //log(keys)
|
||||
var bodykeyiv = JSON.parse(RSA.decode(keys, bodykey));
|
||||
var key = CryptoJS.enc.Utf8.parse(bodykeyiv.key);
|
||||
var iv = CryptoJS.enc.Utf8.parse(bodykeyiv.iv);
|
||||
var html = Decrypt(response_key, key, iv);
|
||||
return html
|
||||
}
|
||||
const headers = {
|
||||
'Cache-Control': 'no-cache',
|
||||
'Version': '2406025',
|
||||
'PackageName': 'com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f',
|
||||
'Ver': '1.9.2',
|
||||
'Referer': 'https://api.8utdtcq.com',
|
||||
'X-Customer-Client-Ip': '127.0.0.1',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
'Host': 'api.8utdtcq.com',
|
||||
'Connection': 'Keep-Alive',
|
||||
//'Accept-Encoding': 'gzip',
|
||||
'User-Agent': 'okhttp/3.12.0'
|
||||
}
|
||||
// var MY_URL = MY_URL.split("##")[1]; //log(MY_URL)
|
||||
input = input.replace('https://api.8utdtcq.com/', '');
|
||||
//console.log("input----===="+input)
|
||||
|
||||
// var vod_continu = input.split("/")[1]; //log(vod_id)
|
||||
var vod_id = input.split("/")[0];
|
||||
//console.log("vod----===="+vod_id)
|
||||
var timestamp = new Date().getTime() / 1000;
|
||||
var t = timestamp.toString().split('.')[0];
|
||||
var request_key = JSON.stringify({
|
||||
"token_id": "393668",
|
||||
"vod_id": vod_id,
|
||||
"mobile_time": t,
|
||||
"token": "1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79"
|
||||
});
|
||||
var request_key2 = Encrypt(request_key);
|
||||
var body = getbody2(request_key2, t)
|
||||
var html = gethtml("https://api.8utdtcq.com/App/IndexPlay/playInfo", body, headers)
|
||||
var data2 = JSON.parse(html).vodInfo; //console.log("hwudwudg-===="+JSON.stringify(data2))
|
||||
var request_key3 = JSON.stringify({
|
||||
"vurl_cloud_id": "2",
|
||||
"vod_d_id": vod_id
|
||||
}); //log(request_key3)
|
||||
var request_key4 = Encrypt(request_key3); //log(request_key4)
|
||||
var body2 = getbody2(request_key4, t)
|
||||
|
||||
var html3 = gethtml("https://api.8utdtcq.com/App/Resource/Vurl/show", body2, headers); //log(html3)
|
||||
|
||||
var list = JSON.parse(html3).list;
|
||||
let nnnmm = [];
|
||||
list.forEach(item => {
|
||||
// 获取play对象的所有值
|
||||
const playParams = Object.values(item.play);
|
||||
let lastParam = null;
|
||||
|
||||
// 从数组的最后一个元素开始,向前查找,直到找到一个非空的param值
|
||||
for (let i = playParams.length - 1; i >= 0; i--) {
|
||||
if (playParams[i].param) {
|
||||
lastParam = playParams[i].param;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// 使用正则表达式匹配vurl_id
|
||||
const vurlIdMatch = lastParam.match(/vurl_id=(\d+)/);
|
||||
const resolution = lastParam.match(/resolution=(\d+)/);
|
||||
// 如果匹配成功,将title和vurl_id组合后push到result数组
|
||||
if (vurlIdMatch) {
|
||||
nnnmm.push(`${item.title}$${vod_id}/${vurlIdMatch[1]}?${resolution[1]}`);
|
||||
}
|
||||
});
|
||||
VOD = {
|
||||
title: data2.vod_name,
|
||||
type: data2.videoTag.toString(),
|
||||
desc: data2.vod_use_content,
|
||||
vod_actor: data2.vod_actor,
|
||||
vod_area: data2.vod_area,
|
||||
vod_director: data2.vod_director,
|
||||
img: data2.vod_pic,
|
||||
vod_play_from: '瓜子HD',
|
||||
vod_play_url: nnnmm.join('#')
|
||||
}
|
||||
}),
|
||||
搜索: $js.toString(() => {
|
||||
let d = [];
|
||||
|
||||
function Encrypt(plainText) {
|
||||
let key = CryptoJS.enc.Utf8.parse("mvXBSW7ekreItNsT");
|
||||
let iv = CryptoJS.enc.Utf8.parse("2U3IrJL8szAKp0Fj");
|
||||
// 将文本加密为 AES/CBC/PKCS5Padding 格式
|
||||
let encrypted = CryptoJS.AES.encrypt(plainText, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC,
|
||||
padding: CryptoJS.pad.Pkcs7
|
||||
});
|
||||
|
||||
// 获取加密结果并转为 Hex 格式
|
||||
let encryptedHex = encrypted.ciphertext.toString(CryptoJS.enc.Hex);
|
||||
return encryptedHex.toUpperCase(); // 返回大写 Hex 格式
|
||||
}
|
||||
|
||||
function Decrypt(word, key, iv) {
|
||||
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
|
||||
|
||||
// 使用AES/CBC/PKCS5Padding模式进行解密
|
||||
let decrypt = CryptoJS.AES.decrypt({
|
||||
ciphertext: encryptedHexStr
|
||||
}, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC, // 使用CBC模式
|
||||
padding: CryptoJS.pad.Pkcs7 // 使用PKCS#7填充
|
||||
});
|
||||
|
||||
// 将解密后的数据转换为原始文本
|
||||
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
|
||||
|
||||
// 返回解密后的文本
|
||||
return decryptedStr;
|
||||
}
|
||||
|
||||
function getbody3(key, t) {
|
||||
var signature = 'token_id=,token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79,phone_type=1,request_key=' + key + ',app_id=1,time=' + t + ',keys=qDpotE2bedimK3QGqlyV5ieXXC3EhaPLQ+IOJyHnHflCj5w/7ESK7FgywMvrgjxbx0GklEFLI4+JshgySe633OIRstuktwdiCy3CT+fLSpuxBJDIlfXQDaeH3ig1wiB0JsZ601XHiFweGMu4tZfnSpHg3OnoL6nz/uurUif2OK4=*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br'; //log(signature)
|
||||
var signature2 = md5(signature); //log(signature2)
|
||||
var body = 'token=1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79&token_id=&phone_type=1&time=' + t + '&phone_model=xiaomi-22021211rc&keys=qDpotE2bedimK3QGqlyV5ieXXC3EhaPLQ%2BIOJyHnHflCj5w%2F7ESK7FgywMvrgjxbx0GklEFLI4%2BJshgySe633OIRstuktwdiCy3CT%2BfLSpuxBJDIlfXQDaeH3ig1wiB0JsZ601XHiFweGMu4tZfnSpHg3OnoL6nz%2FuurUif2OK4%3D&request_key=' + key + '&signature=' + signature2 + '&app_id=1&ad_version=1';
|
||||
return body
|
||||
}
|
||||
const bodykey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcKZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcWV9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdIDblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVMiMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUMWBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZK7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1bL3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oat5lYKfpe8k83ZA==";
|
||||
|
||||
function gethtml(u, body, headers) {
|
||||
var hd = fetch(u, {
|
||||
headers: headers,
|
||||
body: body,
|
||||
method: 'POST',
|
||||
rejectCoding: true
|
||||
});
|
||||
var banner = JSON.parse(hd).data;
|
||||
var response_key = banner.response_key; //log()
|
||||
//console.log("response_key=="+response_key)
|
||||
var keys = banner.keys; //log(keys)
|
||||
var bodykeyiv = JSON.parse(RSA.decode(keys, bodykey));
|
||||
//console.log("rsaxxxx=="+JSON.stringify(bodykeyiv))
|
||||
var key = CryptoJS.enc.Utf8.parse(bodykeyiv.key);
|
||||
var iv = CryptoJS.enc.Utf8.parse(bodykeyiv.iv);
|
||||
var html = Decrypt(response_key, key, iv);
|
||||
//console.log("nskjsnwkjdnejd===qqxxxq="+JSON.stringify(html))
|
||||
return html
|
||||
}
|
||||
var timestamp = new Date().getTime() / 1000;
|
||||
var t = timestamp.toString().split('.')[0];
|
||||
var url = input.split("#")[0]; //url
|
||||
var request_key11 = input.split("#")[1]
|
||||
|
||||
var request_key = JSON.stringify({
|
||||
"keywords": request_key11,
|
||||
"order_val": "1"
|
||||
})
|
||||
//console.log("nskjsnwkjdnejd===qqxxxq=tttt"+request_key)
|
||||
var request_key2 = Encrypt(request_key);
|
||||
var body = getbody3(request_key2, t)
|
||||
var headers = {
|
||||
'Cache-Control': 'no-cache',
|
||||
'Version': '2406025',
|
||||
'PackageName': 'com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f',
|
||||
'Ver': '1.9.2',
|
||||
'Referer': 'https://api.8utdtcq.com',
|
||||
'X-Customer-Client-Ip': '127.0.0.1',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
'Host': 'api.8utdtcq.com',
|
||||
'Connection': 'Keep-Alive',
|
||||
'User-Agent': 'okhttp/3.12.0'
|
||||
}
|
||||
var html = gethtml(url, body, headers)
|
||||
//console.log("nskjsnwkjdnejd===="+html)
|
||||
|
||||
var list = JSON.parse(html).list; //log(list)
|
||||
//console.log("nskjsnwkjdnejd===qqqqq="+list)
|
||||
list.forEach(data => {
|
||||
d.push({
|
||||
title: data.vod_name,
|
||||
desc: data.vod_continu == 0 ? '电影' : '更新至' + data.vod_continu + '集',
|
||||
content: data.vod_addtime,
|
||||
img: data.vod_pic,
|
||||
url: `${data.vod_id}/${data.vod_continu}`,
|
||||
})
|
||||
})
|
||||
setResult(d)
|
||||
}),
|
||||
}
|
||||
-890
@@ -1,890 +0,0 @@
|
||||
var rule = {
|
||||
title: '看了么',
|
||||
host: 'https://www.ksksl.com',
|
||||
// url:'/show/fyclass/page/fypage.html',
|
||||
url: '/show/fyclassfyfilter.html',
|
||||
filterable: 1, //是否启用分类筛选,
|
||||
filter_url: '{{fl.area}}{{fl.by or "/by/time"}}{{fl.class}}/page/fypage{{fl.year}}',
|
||||
filter: {
|
||||
"dy": [{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "中国大陆",
|
||||
"v": "/area/中国大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "/area/中国香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "/area/中国台湾"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "/area/美国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "/area/日本"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "/area/韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "/area/英国"
|
||||
}, {
|
||||
"n": "法国",
|
||||
"v": "/area/法国"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "分类",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "/class/喜剧"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "/class/爱情"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "/class/恐怖"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "/class/动作"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "/class/科幻"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "/class/剧情"
|
||||
}, {
|
||||
"n": "警匪",
|
||||
"v": "/class/警匪"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "/class/犯罪"
|
||||
}, {
|
||||
"n": "动画",
|
||||
"v": "/class/动画"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "/class/奇幻"
|
||||
}, {
|
||||
"n": "武侠",
|
||||
"v": "/class/武侠"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "/class/冒险"
|
||||
}, {
|
||||
"n": "枪战",
|
||||
"v": "/class/枪战"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "/class/恐怖"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "/class/悬疑"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "/class/惊悚"
|
||||
}, {
|
||||
"n": "经典",
|
||||
"v": "/class/经典"
|
||||
}, {
|
||||
"n": "青春",
|
||||
"v": "/class/青春"
|
||||
}, {
|
||||
"n": "文艺",
|
||||
"v": "/class/文艺"
|
||||
}, {
|
||||
"n": "古装",
|
||||
"v": "/class/古装"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "/class/历史"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "/class/运动"
|
||||
}, {
|
||||
"n": "农村",
|
||||
"v": "/class/农村"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "/by/score"
|
||||
}]
|
||||
}],
|
||||
"tv": [{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "中国大陆",
|
||||
"v": "/area/中国大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "/area/中国香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "/area/中国台湾"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "/area/美国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "/area/日本"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "/area/韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "/area/英国"
|
||||
}, {
|
||||
"n": "法国",
|
||||
"v": "/area/法国"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "分类",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "古装",
|
||||
"v": "/class/古装"
|
||||
}, {
|
||||
"n": "言情",
|
||||
"v": "/class/言情"
|
||||
}, {
|
||||
"n": "武侠",
|
||||
"v": "/class/武侠"
|
||||
}, {
|
||||
"n": "偶像",
|
||||
"v": "/class/美国"
|
||||
}, {
|
||||
"n": "家庭",
|
||||
"v": "/class/家庭"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "/class/喜剧"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "/class/战争"
|
||||
}, {
|
||||
"n": "军旅",
|
||||
"v": "/class/军旅"
|
||||
}, {
|
||||
"n": "谍战",
|
||||
"v": "/class/谍战"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "/class/悬疑"
|
||||
}, {
|
||||
"n": "罪案",
|
||||
"v": "/class/罪案"
|
||||
}, {
|
||||
"n": "穿越",
|
||||
"v": "/class/穿越"
|
||||
}, {
|
||||
"n": "宫廷",
|
||||
"v": "/class/宫廷"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "/class/历史"
|
||||
}, {
|
||||
"n": "神话",
|
||||
"v": "/class/神话"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "/class/科幻"
|
||||
}, {
|
||||
"n": "年代",
|
||||
"v": "/class/年代"
|
||||
}, {
|
||||
"n": "农村",
|
||||
"v": "/class/农村"
|
||||
}, {
|
||||
"n": "商战",
|
||||
"v": "/class/商战"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "/class/剧情"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "/class/奇幻"
|
||||
}, {
|
||||
"n": "网剧",
|
||||
"v": "/class/网剧"
|
||||
}, {
|
||||
"n": "都市",
|
||||
"v": "/class/都市"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "/by/score"
|
||||
}]
|
||||
}],
|
||||
"zy": [{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "中国大陆",
|
||||
"v": "/area/中国大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "/area/中国香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "/area/中国台湾"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "/area/美国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "/area/日本"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "/area/韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "/area/英国"
|
||||
}, {
|
||||
"n": "法国",
|
||||
"v": "/area/法国"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "分类",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "表演",
|
||||
"v": "/class/表演"
|
||||
}, {
|
||||
"n": "播报",
|
||||
"v": "/class/播报"
|
||||
}, {
|
||||
"n": "访谈",
|
||||
"v": "/class/访谈"
|
||||
}, {
|
||||
"n": "体验",
|
||||
"v": "/class/体验"
|
||||
}, {
|
||||
"n": "养成",
|
||||
"v": "/class/养成"
|
||||
}, {
|
||||
"n": "游戏",
|
||||
"v": "/class/游戏"
|
||||
}, {
|
||||
"n": "亲子",
|
||||
"v": "/class/亲子"
|
||||
}, {
|
||||
"n": "美食",
|
||||
"v": "/class/美食"
|
||||
}, {
|
||||
"n": "情感",
|
||||
"v": "/class/情感"
|
||||
}, {
|
||||
"n": "选秀",
|
||||
"v": "/class/选秀"
|
||||
}, {
|
||||
"n": "益智",
|
||||
"v": "/class/益智"
|
||||
}, {
|
||||
"n": "晚会",
|
||||
"v": "/class/晚会"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "/class/音乐"
|
||||
}, {
|
||||
"n": "文化",
|
||||
"v": "/class/文化"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "/class/喜剧"
|
||||
}, {
|
||||
"n": "曲艺",
|
||||
"v": "/class/曲艺"
|
||||
}, {
|
||||
"n": "职场",
|
||||
"v": "/class/职场"
|
||||
}, {
|
||||
"n": "脱口秀",
|
||||
"v": "/class/脱口秀"
|
||||
}, {
|
||||
"n": "文艺",
|
||||
"v": "/class/文艺"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "/class/竞技"
|
||||
}, {
|
||||
"n": "潮流文化",
|
||||
"v": "/class/潮流文化"
|
||||
}, {
|
||||
"n": "体育",
|
||||
"v": "/class/体育"
|
||||
}, {
|
||||
"n": "资讯",
|
||||
"v": "/class/资讯"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "/by/score"
|
||||
}]
|
||||
}],
|
||||
"dm": [{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "中国大陆",
|
||||
"v": "/area/中国大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "/area/中国香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "/area/中国台湾"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "/area/美国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "/area/日本"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "/area/韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "/area/英国"
|
||||
}, {
|
||||
"n": "法国",
|
||||
"v": "/area/法国"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "分类",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "热门",
|
||||
"v": "/class/热门"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "/class/搞笑"
|
||||
}, {
|
||||
"n": "番剧",
|
||||
"v": "/class/番剧"
|
||||
}, {
|
||||
"n": "国创",
|
||||
"v": "/class/国创"
|
||||
}, {
|
||||
"n": "大电影",
|
||||
"v": "/class/大电影"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "/class/热血"
|
||||
}, {
|
||||
"n": "催泪",
|
||||
"v": "/class/催泪"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "/class/励志"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "/class/机战"
|
||||
}, {
|
||||
"n": "格斗",
|
||||
"v": "/class/格斗"
|
||||
}, {
|
||||
"n": "恋爱",
|
||||
"v": "/class/恋爱"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "/class/科幻"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "/class/奇幻"
|
||||
}, {
|
||||
"n": "魔幻",
|
||||
"v": "/class/魔幻"
|
||||
}, {
|
||||
"n": "推理",
|
||||
"v": "/class/推理"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "/class/校园"
|
||||
}, {
|
||||
"n": "日常",
|
||||
"v": "/class/日常"
|
||||
}, {
|
||||
"n": "经典",
|
||||
"v": "/class/经典"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "/class/历史"
|
||||
}, {
|
||||
"n": "美食",
|
||||
"v": "/class/美食"
|
||||
}, {
|
||||
"n": "武侠",
|
||||
"v": "/class/武侠"
|
||||
}, {
|
||||
"n": "玄幻",
|
||||
"v": "/class/玄幻"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "/class/竞技"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "/year/2009"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "/by/score"
|
||||
}]
|
||||
}],
|
||||
"jl": [{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "中国大陆",
|
||||
"v": "/area/中国大陆"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "/area/日本"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "/area/美国"
|
||||
}, {
|
||||
"n": "国外",
|
||||
"v": "/area/国外"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "/area/其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "分类",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "社会",
|
||||
"v": "/class/社会"
|
||||
}, {
|
||||
"n": "动物",
|
||||
"v": "/class/动物"
|
||||
}, {
|
||||
"n": "文化",
|
||||
"v": "/class/文化"
|
||||
}, {
|
||||
"n": "自然",
|
||||
"v": "/class/自然"
|
||||
}, {
|
||||
"n": "人文",
|
||||
"v": "/class/人文"
|
||||
}, {
|
||||
"n": "军事",
|
||||
"v": "/class/军事"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "/class/历史"
|
||||
}, {
|
||||
"n": "记录",
|
||||
"v": "/class/记录"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "/year/2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "/year/2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "/year/2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "/year/2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "/year/2010"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "/by/score"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
// searchUrl:'/ch.html?wd=**',
|
||||
searchUrl: '/ch/page/fypage/wd/**.html',
|
||||
searchable: 2,
|
||||
headers: {
|
||||
'User-Agent': 'UC_UA'
|
||||
},
|
||||
timeout: 5000,
|
||||
// class_name: '电影&电视剧&动漫&综艺&纪录片',//静态分类名称拼接
|
||||
// class_url: 'dy&tv&dm&zy&jl',//静态分类标识拼接
|
||||
class_parse: '.vi-nav.swiper-wrapper&&li:gt(0):lt(6);a&&Text;a&&href;.*/(.*?).html',
|
||||
play_parse: true,
|
||||
lazy: `js:
|
||||
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
|
||||
var url = html.url;
|
||||
if (html.encrypt == '1') {
|
||||
url = unescape(url)
|
||||
} else if (html.encrypt == '2') {
|
||||
url = unescape(base64Decode(url))
|
||||
}
|
||||
if (/\\.m3u8|\\.mp4/.test(url)) {
|
||||
input = {
|
||||
jx: 0,
|
||||
url: url,
|
||||
parse: 0
|
||||
}
|
||||
} else {
|
||||
input
|
||||
}
|
||||
`,
|
||||
limit: 5,
|
||||
推荐: '.dx-top;li;a&&title;a&&data-original;.vod_remarks&&Text;a&&href',
|
||||
double: true, // 推荐内容是否双层定位
|
||||
一级: 'ul.dx-list li;a&&title;a&&data-original;.vod_remarks&&Text;a&&href',
|
||||
二级: {
|
||||
"title": "h1--span&&Text;",
|
||||
"img": ".picHover&&img&&src",
|
||||
"desc": ";;;.video-info-item:eq(0)&&Text;.item-tags&&Text",
|
||||
"content": ".vod_content&&Text",
|
||||
"tabs": ".play-title h2",
|
||||
"lists": ".play_li.fn-clear:eq(#id) a"
|
||||
},
|
||||
搜索: '*',
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
var rule = {
|
||||
类型: '影视', //影视|听书|漫画|小说
|
||||
title: '爱看短剧[盘]',
|
||||
host: 'https://ys.110t.cn/',
|
||||
homeUrl: '/api/ajax.php?act=recommend',
|
||||
homeUrl: '/api/ajax.php?act=Daily',
|
||||
url: '/api/ajax.php?act=fyclass',
|
||||
searchUrl: '/api/ajax.php?act=search&name=**',
|
||||
searchable: 1,
|
||||
quickSearch: 0,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
},
|
||||
hikerListCol: "text_1",
|
||||
hikerClassListCol: "text_1",
|
||||
timeout: 5000,
|
||||
class_name: '全部',
|
||||
class_url: 'yingshilist',
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
input = "push://" + input;
|
||||
}),
|
||||
double: false,
|
||||
推荐: '*',
|
||||
一级: 'json:data;name;;addtime;url',
|
||||
二级: '*',
|
||||
搜索: '*',
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
var rule = {
|
||||
title: '碟调影视',
|
||||
host: 'http://www.618648.com',
|
||||
// homeUrl:'/',
|
||||
url: '/die-tiao/fyclass-fypage.html',
|
||||
searchUrl: '/diediaoch/page/fypage/wd/**.html',
|
||||
searchable: 2, //是否启用全局搜索,
|
||||
quickSearch: 0, //是否启用快速搜索,
|
||||
filterable: 0, //是否启用分类筛选,
|
||||
headers: { //网站的请求头,完整支持所有的,常带ua和cookies
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
// "Cookie": "searchneed=ok"
|
||||
},
|
||||
//class_parse:'.stui-header__menu li.hidden-xs;a&&Text;a&&href;.*/(.*?).html',
|
||||
class_name: '电影&电视剧&综艺&动漫',
|
||||
class_url: '1&2&3&4',
|
||||
play_parse: true,
|
||||
lazy: '',
|
||||
limit: 8,
|
||||
推荐: '.stui-vodlist.clearfix;.stui-vodlist__box;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
double: true, // 推荐内容是否双层定位
|
||||
一级: '.stui-vodlist.clearfix li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
二级: {
|
||||
"title": "h1.title&&Text;.stui-content__detail p:eq(2)&&Text",
|
||||
"img": ".lazyload&&data-original",
|
||||
"desc": ".video-info-items:eq(-2)&&Text;.video-info-items:eq(-1)&&Text;.video-info-items:eq(-2)&&Text;.stui-content__detail p:eq(7)&&Text;.stui-content__detail p:eq(6)&&Text",
|
||||
"content": ".stui-content__detail p:eq(9)&&Text",
|
||||
"tabs": ".nav.nav-tabs li",
|
||||
"lists": ".tab-pane.fade:eq(#id)&&ul&&li"
|
||||
},
|
||||
搜索: '.stui-vodlist.clearfix li;a&&title;a&&data-original;.pic-text&&Text;a&&href',
|
||||
}
|
||||
-970
@@ -1,970 +0,0 @@
|
||||
var rule = {
|
||||
title: '花子动漫[漫]',
|
||||
host: 'https://www.huazidm.com',
|
||||
class_name: 'TV动漫&剧场&特摄',
|
||||
class_url: '1&2&3',
|
||||
searchUrl: '/index.php/ajax/suggest?mid=1&wd=**&limit=50',
|
||||
searchUrl: '/vodsearch/**----------fypage---.html',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
},
|
||||
url: '/index.php/api/vod#type=fyclassfyfilter&page=fypage',
|
||||
filterable: 0,
|
||||
filter_url: '&class={{fl.class}}&year={{fl.year}}&letter={{fl.letter}}&by={{fl.by}}',
|
||||
filter: {
|
||||
"1": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "异世界",
|
||||
"v": "异世界"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "百合"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "后宫"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "纯爱",
|
||||
"v": "纯爱"
|
||||
}, {
|
||||
"n": "穿越",
|
||||
"v": "穿越"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "战斗",
|
||||
"v": "战斗"
|
||||
}, {
|
||||
"n": "后宫",
|
||||
"v": "后宫"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "搞笑"
|
||||
}, {
|
||||
"n": "日常",
|
||||
"v": "日常"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "治愈",
|
||||
"v": "治愈"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "恋爱",
|
||||
"v": "恋爱"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "推理",
|
||||
"v": "推理"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "机战"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "萝莉",
|
||||
"v": "萝莉"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
}, {
|
||||
"n": "泡面番",
|
||||
"v": "泡面番"
|
||||
}, {
|
||||
"n": "游戏改",
|
||||
"v": "游戏改"
|
||||
}, {
|
||||
"n": "小说改",
|
||||
"v": "小说改"
|
||||
}, {
|
||||
"n": "漫画改",
|
||||
"v": "漫画改"
|
||||
}, {
|
||||
"n": "腐",
|
||||
"v": "腐"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}, {
|
||||
"n": "2002",
|
||||
"v": "2002"
|
||||
}, {
|
||||
"n": "2001",
|
||||
"v": "2001"
|
||||
}, {
|
||||
"n": "2000",
|
||||
"v": "2000"
|
||||
}, {
|
||||
"n": "1999",
|
||||
"v": "1999"
|
||||
}, {
|
||||
"n": "1998",
|
||||
"v": "1998"
|
||||
}, {
|
||||
"n": "1997",
|
||||
"v": "1997"
|
||||
}, {
|
||||
"n": "1996",
|
||||
"v": "1996"
|
||||
}, {
|
||||
"n": "1995",
|
||||
"v": "1995"
|
||||
}, {
|
||||
"n": "1994",
|
||||
"v": "1994"
|
||||
}, {
|
||||
"n": "1993",
|
||||
"v": "1993"
|
||||
}, {
|
||||
"n": "1992",
|
||||
"v": "1992"
|
||||
}, {
|
||||
"n": "1991",
|
||||
"v": "1991"
|
||||
}, {
|
||||
"n": "1990",
|
||||
"v": "1990"
|
||||
}, {
|
||||
"n": "1989",
|
||||
"v": "1989"
|
||||
}, {
|
||||
"n": "1988",
|
||||
"v": "1988"
|
||||
}, {
|
||||
"n": "1987",
|
||||
"v": "1987"
|
||||
}, {
|
||||
"n": "1986",
|
||||
"v": "1986"
|
||||
}, {
|
||||
"n": "1985",
|
||||
"v": "1985"
|
||||
}, {
|
||||
"n": "1984",
|
||||
"v": "1984"
|
||||
}, {
|
||||
"n": "1983",
|
||||
"v": "1983"
|
||||
}, {
|
||||
"n": "1982",
|
||||
"v": "1982"
|
||||
}, {
|
||||
"n": "1981",
|
||||
"v": "1981"
|
||||
}, {
|
||||
"n": "1980",
|
||||
"v": "1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "letter",
|
||||
"name": "字母",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "A",
|
||||
"v": "A"
|
||||
}, {
|
||||
"n": "B",
|
||||
"v": "B"
|
||||
}, {
|
||||
"n": "C",
|
||||
"v": "C"
|
||||
}, {
|
||||
"n": "D",
|
||||
"v": "D"
|
||||
}, {
|
||||
"n": "E",
|
||||
"v": "E"
|
||||
}, {
|
||||
"n": "F",
|
||||
"v": "F"
|
||||
}, {
|
||||
"n": "G",
|
||||
"v": "G"
|
||||
}, {
|
||||
"n": "H",
|
||||
"v": "H"
|
||||
}, {
|
||||
"n": "I",
|
||||
"v": "I"
|
||||
}, {
|
||||
"n": "J",
|
||||
"v": "J"
|
||||
}, {
|
||||
"n": "K",
|
||||
"v": "K"
|
||||
}, {
|
||||
"n": "L",
|
||||
"v": "L"
|
||||
}, {
|
||||
"n": "M",
|
||||
"v": "M"
|
||||
}, {
|
||||
"n": "N",
|
||||
"v": "N"
|
||||
}, {
|
||||
"n": "O",
|
||||
"v": "O"
|
||||
}, {
|
||||
"n": "P",
|
||||
"v": "P"
|
||||
}, {
|
||||
"n": "Q",
|
||||
"v": "Q"
|
||||
}, {
|
||||
"n": "R",
|
||||
"v": "R"
|
||||
}, {
|
||||
"n": "S",
|
||||
"v": "S"
|
||||
}, {
|
||||
"n": "T",
|
||||
"v": "T"
|
||||
}, {
|
||||
"n": "U",
|
||||
"v": "U"
|
||||
}, {
|
||||
"n": "V",
|
||||
"v": "V"
|
||||
}, {
|
||||
"n": "W",
|
||||
"v": "W"
|
||||
}, {
|
||||
"n": "X",
|
||||
"v": "X"
|
||||
}, {
|
||||
"n": "Y",
|
||||
"v": "Y"
|
||||
}, {
|
||||
"n": "Z",
|
||||
"v": "Z"
|
||||
}, {
|
||||
"n": "0-9",
|
||||
"v": "0-9"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "时间",
|
||||
"value": [{
|
||||
"n": "按最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "按最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "按评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"2": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "异世界",
|
||||
"v": "异世界"
|
||||
}, {
|
||||
"n": "百合",
|
||||
"v": "百合"
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "穿越",
|
||||
"v": "穿越"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "战斗",
|
||||
"v": "战斗"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "搞笑"
|
||||
}, {
|
||||
"n": "日常",
|
||||
"v": "日常"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "治愈",
|
||||
"v": "治愈"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "恋爱",
|
||||
"v": "恋爱"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "机战"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}, {
|
||||
"n": "2002",
|
||||
"v": "2002"
|
||||
}, {
|
||||
"n": "2001",
|
||||
"v": "2001"
|
||||
}, {
|
||||
"n": "2000",
|
||||
"v": "2000"
|
||||
}, {
|
||||
"n": "1999",
|
||||
"v": "1999"
|
||||
}, {
|
||||
"n": "1998",
|
||||
"v": "1998"
|
||||
}, {
|
||||
"n": "1997",
|
||||
"v": "1997"
|
||||
}, {
|
||||
"n": "1996",
|
||||
"v": "1996"
|
||||
}, {
|
||||
"n": "1995",
|
||||
"v": "1995"
|
||||
}, {
|
||||
"n": "1994",
|
||||
"v": "1994"
|
||||
}, {
|
||||
"n": "1993",
|
||||
"v": "1993"
|
||||
}, {
|
||||
"n": "1992",
|
||||
"v": "1992"
|
||||
}, {
|
||||
"n": "1991",
|
||||
"v": "1991"
|
||||
}, {
|
||||
"n": "1990",
|
||||
"v": "1990"
|
||||
}, {
|
||||
"n": "1989",
|
||||
"v": "1989"
|
||||
}, {
|
||||
"n": "1988",
|
||||
"v": "1988"
|
||||
}, {
|
||||
"n": "1987",
|
||||
"v": "1987"
|
||||
}, {
|
||||
"n": "1986",
|
||||
"v": "1986"
|
||||
}, {
|
||||
"n": "1985",
|
||||
"v": "1985"
|
||||
}, {
|
||||
"n": "1984",
|
||||
"v": "1984"
|
||||
}, {
|
||||
"n": "1983",
|
||||
"v": "1983"
|
||||
}, {
|
||||
"n": "1982",
|
||||
"v": "1982"
|
||||
}, {
|
||||
"n": "1981",
|
||||
"v": "1981"
|
||||
}, {
|
||||
"n": "1980",
|
||||
"v": "1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "letter",
|
||||
"name": "字母",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "A",
|
||||
"v": "A"
|
||||
}, {
|
||||
"n": "B",
|
||||
"v": "B"
|
||||
}, {
|
||||
"n": "C",
|
||||
"v": "C"
|
||||
}, {
|
||||
"n": "D",
|
||||
"v": "D"
|
||||
}, {
|
||||
"n": "E",
|
||||
"v": "E"
|
||||
}, {
|
||||
"n": "F",
|
||||
"v": "F"
|
||||
}, {
|
||||
"n": "G",
|
||||
"v": "G"
|
||||
}, {
|
||||
"n": "H",
|
||||
"v": "H"
|
||||
}, {
|
||||
"n": "I",
|
||||
"v": "I"
|
||||
}, {
|
||||
"n": "J",
|
||||
"v": "J"
|
||||
}, {
|
||||
"n": "K",
|
||||
"v": "K"
|
||||
}, {
|
||||
"n": "L",
|
||||
"v": "L"
|
||||
}, {
|
||||
"n": "M",
|
||||
"v": "M"
|
||||
}, {
|
||||
"n": "N",
|
||||
"v": "N"
|
||||
}, {
|
||||
"n": "O",
|
||||
"v": "O"
|
||||
}, {
|
||||
"n": "P",
|
||||
"v": "P"
|
||||
}, {
|
||||
"n": "Q",
|
||||
"v": "Q"
|
||||
}, {
|
||||
"n": "R",
|
||||
"v": "R"
|
||||
}, {
|
||||
"n": "S",
|
||||
"v": "S"
|
||||
}, {
|
||||
"n": "T",
|
||||
"v": "T"
|
||||
}, {
|
||||
"n": "U",
|
||||
"v": "U"
|
||||
}, {
|
||||
"n": "V",
|
||||
"v": "V"
|
||||
}, {
|
||||
"n": "W",
|
||||
"v": "W"
|
||||
}, {
|
||||
"n": "X",
|
||||
"v": "X"
|
||||
}, {
|
||||
"n": "Y",
|
||||
"v": "Y"
|
||||
}, {
|
||||
"n": "Z",
|
||||
"v": "Z"
|
||||
}, {
|
||||
"n": "0-9",
|
||||
"v": "0-9"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "时间",
|
||||
"value": [{
|
||||
"n": "按最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "按最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "按评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}],
|
||||
"3": [{
|
||||
"key": "class",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "2003",
|
||||
"v": "2003"
|
||||
}, {
|
||||
"n": "2002",
|
||||
"v": "2002"
|
||||
}, {
|
||||
"n": "2001",
|
||||
"v": "2001"
|
||||
}, {
|
||||
"n": "2000",
|
||||
"v": "2000"
|
||||
}, {
|
||||
"n": "1999",
|
||||
"v": "1999"
|
||||
}, {
|
||||
"n": "1998",
|
||||
"v": "1998"
|
||||
}, {
|
||||
"n": "1997",
|
||||
"v": "1997"
|
||||
}, {
|
||||
"n": "1996",
|
||||
"v": "1996"
|
||||
}, {
|
||||
"n": "1995",
|
||||
"v": "1995"
|
||||
}, {
|
||||
"n": "1994",
|
||||
"v": "1994"
|
||||
}, {
|
||||
"n": "1993",
|
||||
"v": "1993"
|
||||
}, {
|
||||
"n": "1992",
|
||||
"v": "1992"
|
||||
}, {
|
||||
"n": "1991",
|
||||
"v": "1991"
|
||||
}, {
|
||||
"n": "1990",
|
||||
"v": "1990"
|
||||
}, {
|
||||
"n": "1989",
|
||||
"v": "1989"
|
||||
}, {
|
||||
"n": "1988",
|
||||
"v": "1988"
|
||||
}, {
|
||||
"n": "1987",
|
||||
"v": "1987"
|
||||
}, {
|
||||
"n": "1986",
|
||||
"v": "1986"
|
||||
}, {
|
||||
"n": "1985",
|
||||
"v": "1985"
|
||||
}, {
|
||||
"n": "1984",
|
||||
"v": "1984"
|
||||
}, {
|
||||
"n": "1983",
|
||||
"v": "1983"
|
||||
}, {
|
||||
"n": "1982",
|
||||
"v": "1982"
|
||||
}, {
|
||||
"n": "1981",
|
||||
"v": "1981"
|
||||
}, {
|
||||
"n": "1980",
|
||||
"v": "1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "letter",
|
||||
"name": "字母",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "A",
|
||||
"v": "A"
|
||||
}, {
|
||||
"n": "B",
|
||||
"v": "B"
|
||||
}, {
|
||||
"n": "C",
|
||||
"v": "C"
|
||||
}, {
|
||||
"n": "D",
|
||||
"v": "D"
|
||||
}, {
|
||||
"n": "E",
|
||||
"v": "E"
|
||||
}, {
|
||||
"n": "F",
|
||||
"v": "F"
|
||||
}, {
|
||||
"n": "G",
|
||||
"v": "G"
|
||||
}, {
|
||||
"n": "H",
|
||||
"v": "H"
|
||||
}, {
|
||||
"n": "I",
|
||||
"v": "I"
|
||||
}, {
|
||||
"n": "J",
|
||||
"v": "J"
|
||||
}, {
|
||||
"n": "K",
|
||||
"v": "K"
|
||||
}, {
|
||||
"n": "L",
|
||||
"v": "L"
|
||||
}, {
|
||||
"n": "M",
|
||||
"v": "M"
|
||||
}, {
|
||||
"n": "N",
|
||||
"v": "N"
|
||||
}, {
|
||||
"n": "O",
|
||||
"v": "O"
|
||||
}, {
|
||||
"n": "P",
|
||||
"v": "P"
|
||||
}, {
|
||||
"n": "Q",
|
||||
"v": "Q"
|
||||
}, {
|
||||
"n": "R",
|
||||
"v": "R"
|
||||
}, {
|
||||
"n": "S",
|
||||
"v": "S"
|
||||
}, {
|
||||
"n": "T",
|
||||
"v": "T"
|
||||
}, {
|
||||
"n": "U",
|
||||
"v": "U"
|
||||
}, {
|
||||
"n": "V",
|
||||
"v": "V"
|
||||
}, {
|
||||
"n": "W",
|
||||
"v": "W"
|
||||
}, {
|
||||
"n": "X",
|
||||
"v": "X"
|
||||
}, {
|
||||
"n": "Y",
|
||||
"v": "Y"
|
||||
}, {
|
||||
"n": "Z",
|
||||
"v": "Z"
|
||||
}, {
|
||||
"n": "0-9",
|
||||
"v": "0-9"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "时间",
|
||||
"value": [{
|
||||
"n": "按最新",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "按最热",
|
||||
"v": "hits"
|
||||
}, {
|
||||
"n": "按评分",
|
||||
"v": "score"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
filter_def: {},
|
||||
detailUrl: '/voddetail/fyid.html',
|
||||
play_parse: true,
|
||||
sniffer: 1,
|
||||
is_video: 'obj/tos|bd.xhscdn|/ugc/',
|
||||
lazy: $js.toString(() => {
|
||||
input = {
|
||||
parse: 1,
|
||||
url: input,
|
||||
//js:'try{let urls=Array.from(document.querySelectorAll("iframe")).filter(x=>x.src.includes("?url="));if(urls){location.href=urls[0].src}}catch{}document.querySelector("button").click()',
|
||||
js: 'try{location.href=document.querySelector("#playleft iframe").src}catch{}document.querySelector("button.swal-button--confirm").click()',
|
||||
parse_extra: '&is_pc=1&custom_regex=' + rule.is_video,
|
||||
}
|
||||
}),
|
||||
limit: 6,
|
||||
推荐: '.list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href',
|
||||
一级: $js.toString(() => {
|
||||
let body = input.split("#")[1];
|
||||
let t = Math.round(new Date / 1e3).toString();
|
||||
let key = md5("DS" + t + "DCC147D11943AF75");
|
||||
let url = input.split("#")[0];
|
||||
body = body + "&time=" + t + "&key=" + key;
|
||||
print(body);
|
||||
fetch_params.body = body;
|
||||
let html = post(url, fetch_params);
|
||||
let data = JSON.parse(html);
|
||||
VODS = data.list.map(function(it) {
|
||||
it.vod_pic = urljoin2(input.split("/i")[0], it.vod_pic);
|
||||
return it
|
||||
});
|
||||
}),
|
||||
二级: {
|
||||
title: '.slide-info-title&&Text;.slide-info:eq(3)--strong&&Text',
|
||||
img: '.detail-pic&&data-original',
|
||||
desc: '.fraction&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(2)--strong&&Text;.slide-info:eq(1)--strong&&Text',
|
||||
content: '#height_limit&&Text',
|
||||
tabs: '.anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a',
|
||||
tab_text: '.swiper-slide&&Text',
|
||||
lists: '.anthology-list-box:eq(#id) li',
|
||||
},
|
||||
搜索: 'json:list;name;pic;;id',
|
||||
搜索: $js.toString(() => {
|
||||
let html = fetch(input);
|
||||
let list = pdfa(html, ".public-list-box");
|
||||
VODS = list.map(x => {
|
||||
return {
|
||||
vod_name: pdfh(x, ".thumb-txt&&Text"),
|
||||
vod_pic: pdfh(x, ".lazy&&data-src"),
|
||||
vod_remarks: pdfh(x, ".public-list-prb&&Text"),
|
||||
vod_content: pdfh(x, ".thumb-blurb&&Text"),
|
||||
vod_id: pdfh(x, "a&&href")
|
||||
}
|
||||
});
|
||||
}),
|
||||
图片替换: '&=>&'
|
||||
}
|
||||
-549
@@ -1,549 +0,0 @@
|
||||
var rule = {
|
||||
title: "路漫漫",
|
||||
host: "http://www.lmm36.com",
|
||||
url: "/vod/show/id/fyclassfyfilter.html",
|
||||
searchUrl: '/vod/search/page/fypage/wd/**.html',
|
||||
searchable: 2,
|
||||
quickSearch: 0,
|
||||
filterable: 1,
|
||||
filter: {
|
||||
"3": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}],
|
||||
"4": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}],
|
||||
"5": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}],
|
||||
"6": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}],
|
||||
"7": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}],
|
||||
"8": [{
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "/year/2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "/year/2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "/year/2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "/year/2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "/year/2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "/year/2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "/year/2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "/year/2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "/year/2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "/year/2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "/year/2015"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "/year/2014-1980"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近更新",
|
||||
"v": "/by/time"
|
||||
}, {
|
||||
"n": "最高人气",
|
||||
"v": "/by/hits"
|
||||
}, {
|
||||
"n": "最高评分",
|
||||
"v": "/by/score"
|
||||
}, {
|
||||
"n": "最多点赞",
|
||||
"v": "/by/up"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
filter_url: "{{fl.排序}}{{fl.年代}}/page/fypage",
|
||||
filter_def: "",
|
||||
headers: {
|
||||
"User-Agent": "MOBILE_UA"
|
||||
},
|
||||
timeout: 5000,
|
||||
class_name: "日本动漫&国产动漫&欧美动漫&日本动画电影&国产动画电影&欧美动画电影",
|
||||
class_url: "6&7&8&3&4&5",
|
||||
class_parse: "",
|
||||
cate_exclude: "",
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
function getDAesString(token) {
|
||||
eval(getCryptoJS());
|
||||
var key = CryptoJS.enc.Utf8.parse("ejjooopppqqqrwww");
|
||||
|
||||
var iv = CryptoJS.enc.Utf8.parse("1348987635684651");
|
||||
|
||||
var token = CryptoJS.AES.decrypt(token, key, {
|
||||
iv: iv,
|
||||
mode: CryptoJS.mode.CBC,
|
||||
padding: CryptoJS.pad.Pkcs7,
|
||||
});
|
||||
|
||||
return token.toString(CryptoJS.enc.Utf8);
|
||||
}
|
||||
|
||||
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
|
||||
var url = html.url;
|
||||
var from = html.from;
|
||||
if (html.encrypt == "1") {
|
||||
url = unescape(url);
|
||||
} else if (html.encrypt == "2") {
|
||||
url = unescape(base64Decode(url));
|
||||
}
|
||||
if (/\.mp4|\.m3u8|\.flv/.test(url)) {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: url.split("&")[0],
|
||||
js: ''
|
||||
};
|
||||
} else {
|
||||
var jsh = request(HOST + "/static/player/" + from + ".js", {
|
||||
headers: {
|
||||
Referer: input
|
||||
},
|
||||
}).match(/\.src\s*=\s*(.*?);/)[1];
|
||||
//log(MY_HOME);
|
||||
if (/type=/.test(jsh)) {
|
||||
jsh = jsh
|
||||
.replace(/[\+\s']/g, "")
|
||||
.replace(/MacPlayer.Parse/, "")
|
||||
.replace(/MacPlayer.PlayUrl/, url)
|
||||
.replace(/window.location.href/, input);
|
||||
var playht = fetch(jsh, {
|
||||
headers: {
|
||||
Referer: HOST
|
||||
}
|
||||
});
|
||||
} else {
|
||||
jsh = jsh
|
||||
.replace(/[\+\s']/g, "")
|
||||
.replace(/MacPlayer.Parse/, "")
|
||||
.replace(/MacPlayer.PlayUrl/, url)
|
||||
.replace(/window.location.href/, input);
|
||||
|
||||
jsh = JSON.parse(
|
||||
fetch(jsh, {
|
||||
headers: {
|
||||
Referer: HOST
|
||||
},
|
||||
onlyHeaders: true
|
||||
})
|
||||
).url;
|
||||
var playht = fetch(jsh, {
|
||||
headers: {
|
||||
Referer: HOST
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var postapi = jsh.match(/^(.*?\/\/.*?\/.*?\/)/)[1];
|
||||
|
||||
var posturl = postapi + playht.match(/post\("(.*?)"/)[1];
|
||||
if (/act\s*=/.test(playht)) {
|
||||
var vid = playht.match(/vid\s*=\s*"(.*?)"/)[1];
|
||||
var t = playht.match(/var\s*t\s*=\s*"(.*?)"/)[1];
|
||||
var token = playht.match(/token\s*=\s*"(.*?)"/)[1];
|
||||
var act = playht.match(/act\s*=\s*"(.*?)"/)[1];
|
||||
var play = playht.match(/play\s*=\s*"(.*?)"/)[1];
|
||||
token = getDAesString(token);
|
||||
|
||||
var data = JSON.parse(
|
||||
post(posturl, {
|
||||
headers: {
|
||||
Referer: HOST
|
||||
},
|
||||
body: {
|
||||
vid: vid,
|
||||
t: t,
|
||||
token: token,
|
||||
act: act,
|
||||
play: play,
|
||||
},
|
||||
timeout: 5000
|
||||
})
|
||||
);
|
||||
input = {
|
||||
parse: 0,
|
||||
url: data.url,
|
||||
js: ''
|
||||
};
|
||||
} else {
|
||||
var key = "";
|
||||
|
||||
playht.match(/var (\w+)="(.*?)";/g).forEach(function(list) {
|
||||
key += list.match(/"(.*?)"/)[1];
|
||||
});
|
||||
const bodys = JSON.parse(
|
||||
playht
|
||||
.match(/post\(.*?,(.*?),\n/)[1]
|
||||
.replace(/"keyyy"\s*:\s*''.*?''/, '"keyyy" : "' + key + '"')
|
||||
);
|
||||
var data = JSON.parse(
|
||||
post(posturl, {
|
||||
headers: {
|
||||
Referer: HOST
|
||||
},
|
||||
body: bodys
|
||||
})
|
||||
);
|
||||
if (data.ext == "xgplayer") {
|
||||
var dataurl =
|
||||
"https://yun.366day.site/mp4hls/xgplayer.php?vid=" + data.url;
|
||||
var video = fetch(dataurl, {
|
||||
headers: {
|
||||
Referer: jsh
|
||||
}
|
||||
}).match(
|
||||
/"url": "(.*?)"/
|
||||
)[1];
|
||||
input = {
|
||||
parse: 0,
|
||||
url: video,
|
||||
js: ''
|
||||
};
|
||||
} else if (data.ext == "hls" || data.ext == "hls_list") {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: decodeURIComponent(data.url),
|
||||
js: ''
|
||||
};
|
||||
} else {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: data.url,
|
||||
js: ''
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}),
|
||||
double: false,
|
||||
推荐: "*",
|
||||
一级: ".video-img-box;h6.title&&Text;.lazyload&&data-src;.label&&Text;a&&href",
|
||||
二级: {
|
||||
title: ".page-title&&Text;.tag-link&&Text",
|
||||
img: ".module-item-pic&&.lazyload&&src",
|
||||
desc: ".video-info-items:eq(3)&&Text;.video-info-items:eq(2)&&Text;;.video-info-items:eq(1)&&Text;.video-info-items:eq(0)&&Text",
|
||||
content: ".video-info-content&&Text",
|
||||
tabs: ".module-tab-item.tab-item",
|
||||
lists: ".module-player-list:eq(#id) a",
|
||||
tab_text: "body&&Text",
|
||||
list_text: "body&&Text",
|
||||
list_url: "a&&href"
|
||||
},
|
||||
detailUrl: "",
|
||||
搜索: "*"
|
||||
}
|
||||
-378
@@ -1,378 +0,0 @@
|
||||
globalThis.getRandomItem = function(items) {
|
||||
return items[Math.random() * items.length | 0];
|
||||
}
|
||||
var rule = {
|
||||
title: '采集之王[合]',
|
||||
author: '道长',
|
||||
version: '20240706 beta17',
|
||||
update_info: ``.trim(),
|
||||
host: '',
|
||||
homeTid: '',
|
||||
homeUrl: '/api.php/provide/vod/?ac=detail&t={{rule.homeTid}}',
|
||||
detailUrl: '/api.php/provide/vod/?ac=detail&ids=fyid',
|
||||
searchUrl: '/api.php/provide/vod/?wd=**&pg=#TruePage##page=fypage',
|
||||
classUrl: '/api.php/provide/vod/',
|
||||
url: '/api.php/provide/vod/?ac=detail&pg=fypage&t=fyfilter',
|
||||
filter_url: '{{fl.类型}}',
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA'
|
||||
},
|
||||
timeout: 5000,
|
||||
limit: 20,
|
||||
search_limit: 10,
|
||||
searchable: 1,
|
||||
quickSearch: 0,
|
||||
filterable: 1,
|
||||
play_parse: true,
|
||||
parse_url: '',
|
||||
search_match: false,
|
||||
search_pic: true,
|
||||
预处理: $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
|
||||
}
|
||||
if (typeof(batchFetch) === 'function') {
|
||||
rule.search_limit = 16;
|
||||
log('当前程序支持批量请求[batchFetch],搜索限制已设置为16');
|
||||
}
|
||||
let _url = rule.params;
|
||||
log(`传入参数:${_url}`);
|
||||
if (_url && typeof(_url) === 'string' && /^(http|file)/.test(_url)) {
|
||||
if (_url.includes('$')) {
|
||||
let _url_params = _url.split('$');
|
||||
_url = _url_params[0];
|
||||
rule.search_match = !!(_url_params[1]);
|
||||
if (_url_params.length > 2) {
|
||||
rule.search_pic = !!(_url_params[2]);
|
||||
}
|
||||
}
|
||||
let html = request(_url);
|
||||
let json = JSON.parse(html);
|
||||
let _classes = [];
|
||||
rule.filter = {};
|
||||
rule.filter_def = {};
|
||||
json.forEach(it => {
|
||||
let _obj = {
|
||||
type_name: it.name,
|
||||
type_id: it.url,
|
||||
parse_url: it.parse_url || '',
|
||||
searchable: it.searchable !== 0,
|
||||
api: it.api || '',
|
||||
cate_exclude: it.cate_exclude || '',
|
||||
cate_excludes: it.cate_excludes || [],
|
||||
};
|
||||
_classes.push(_obj);
|
||||
try {
|
||||
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_excludes && Array.isArray(_obj.cate_excludes) && _obj.cate_excludes.length > 0) {
|
||||
json1 = json1.filter(cl => !_obj.cate_excludes.includes(cl.type_name));
|
||||
} else if (_obj.cate_exclude) {
|
||||
json1 = json1.filter(cl => !new RegExp(_obj.cate_exclude, 'i').test(cl.type_name));
|
||||
}
|
||||
rule.filter[_obj.type_id] = [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": json1.map(i => {
|
||||
return {
|
||||
"n": i.type_name,
|
||||
'v': i.type_id
|
||||
}
|
||||
})
|
||||
}];
|
||||
if (json1.length > 0) {
|
||||
rule.filter_def[it.url] = {
|
||||
"类型": json1[0].type_id
|
||||
};
|
||||
}
|
||||
} catch (e) {
|
||||
rule.filter[it.url] = [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}]
|
||||
}];
|
||||
}
|
||||
});
|
||||
rule.classes = _classes;
|
||||
}
|
||||
}),
|
||||
class_parse: $js.toString(() => {
|
||||
input = rule.classes;
|
||||
}),
|
||||
推荐: $js.toString(() => {
|
||||
VODS = [];
|
||||
if (rule.classes) {
|
||||
let randomClass = getRandomItem(rule.classes);
|
||||
let _url = urljoin(randomClass.type_id, input);
|
||||
if (randomClass.api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', randomClass.api)
|
||||
}
|
||||
try {
|
||||
let html = request(_url, {
|
||||
timeout: rule.timeout
|
||||
});
|
||||
let json = JSON.parse(html);
|
||||
VODS = json.list;
|
||||
VODS.forEach(it => {
|
||||
it.vod_id = randomClass.type_id + '$' + it.vod_id;
|
||||
it.vod_remarks = it.vod_remarks + '|' + randomClass.type_name;
|
||||
});
|
||||
} catch (e) {}
|
||||
}
|
||||
}),
|
||||
一级: $js.toString(() => {
|
||||
VODS = [];
|
||||
if (rule.classes) {
|
||||
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;
|
||||
VODS.forEach(it => {
|
||||
it.vod_id = MY_CATE + '$' + it.vod_id
|
||||
});
|
||||
}
|
||||
}),
|
||||
二级: $js.toString(() => {
|
||||
VOD = {};
|
||||
if (orId === 'update_info') {
|
||||
VOD = {
|
||||
vod_content: rule.update_info.trim(),
|
||||
vod_name: '更新日志',
|
||||
type_name: '更新日志',
|
||||
vod_pic: 'https://resource-cdn.tuxiaobei.com/video/FtWhs2mewX_7nEuE51_k6zvg6awl.png',
|
||||
vod_remarks: `版本:${rule.version}`,
|
||||
vod_play_from: '道长在线',
|
||||
vod_play_url: '随机小视频$http://api.yujn.cn/api/zzxjj.php',
|
||||
};
|
||||
} else {
|
||||
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) {
|
||||
let canSearch = rule.classes.filter(it => it.searchable);
|
||||
let page = Number(MY_PAGE);
|
||||
page = (MY_PAGE - 1) % Math.ceil(canSearch.length / rule.search_limit) + 1;
|
||||
let truePage = Math.ceil(MY_PAGE / Math.ceil(canSearch.length / rule.search_limit));
|
||||
if (rule.search_limit) {
|
||||
let start = (page - 1) * rule.search_limit;
|
||||
let end = page * rule.search_limit;
|
||||
let t1 = new Date().getTime();
|
||||
let searchMode = typeof(batchFetch) === 'function' ? '批量' : '单个';
|
||||
log('start:' + start);
|
||||
log('end:' + end);
|
||||
log('搜索模式:' + searchMode);
|
||||
log('精准搜索:' + rule.search_match);
|
||||
log('强制获取图片:' + rule.search_pic);
|
||||
if (start < canSearch.length) {
|
||||
let search_classes = canSearch.slice(start, end);
|
||||
let urls = [];
|
||||
search_classes.forEach(it => {
|
||||
let _url = urljoin(it.type_id, input);
|
||||
if (it.api) {
|
||||
_url = _url.replace('/api.php/provide/vod/', it.api)
|
||||
}
|
||||
_url = _url.replace("#TruePage#", "" + truePage);
|
||||
urls.push(_url);
|
||||
});
|
||||
let results_list = [];
|
||||
let results = [];
|
||||
if (typeof(batchFetch) === 'function') {
|
||||
let reqUrls = urls.map(it => {
|
||||
return {
|
||||
url: it,
|
||||
options: {
|
||||
timeout: rule.timeout
|
||||
}
|
||||
}
|
||||
});
|
||||
let rets = batchFetch(reqUrls);
|
||||
let detailUrls = [];
|
||||
let detailUrlCount = 0;
|
||||
rets.forEach((ret, idx) => {
|
||||
let it = search_classes[idx];
|
||||
if (ret) {
|
||||
try {
|
||||
let json = JSON.parse(ret);
|
||||
let data = json.list;
|
||||
data.forEach(i => {
|
||||
i.site_name = it.type_name;
|
||||
i.vod_id = it.type_id + '$' + i.vod_id;
|
||||
i.vod_remarks = i.vod_remarks + '|' + it.type_name;
|
||||
});
|
||||
if (rule.search_match) {
|
||||
data = data.filter(item => item.vod_name && (new RegExp(KEY, 'i')).test(item.vod_name))
|
||||
}
|
||||
if (data.length > 0) {
|
||||
if (rule.search_pic && !data[0].vod_pic) {
|
||||
log(`当前搜索站点【${it.type_name}】没图片,尝试访问二级去获取图片`);
|
||||
let detailUrl = urls[idx].split('wd=')[0] + 'ac=detail&ids=' + data.map(k => k.vod_id.split('$')[1]).join(',');
|
||||
detailUrls.push(detailUrl);
|
||||
results_list.push({
|
||||
data: data,
|
||||
has_pic: false,
|
||||
detailUrlCount: detailUrlCount
|
||||
});
|
||||
detailUrlCount++;
|
||||
} else {
|
||||
results_list.push({
|
||||
data: data,
|
||||
has_pic: true
|
||||
});
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
log(`请求:${it.type_id}发生错误:${e.message}`)
|
||||
}
|
||||
}
|
||||
});
|
||||
let reqUrls2 = detailUrls.map(it => {
|
||||
return {
|
||||
url: it,
|
||||
options: {
|
||||
timeout: rule.timeout
|
||||
}
|
||||
}
|
||||
});
|
||||
let rets2 = reqUrls2.length > 0 ? batchFetch(reqUrls2) : [];
|
||||
for (let k = 0; k < results_list.length; k++) {
|
||||
let result_data = results_list[k].data;
|
||||
if (!results_list[k].has_pic) {
|
||||
try {
|
||||
let detailJson = JSON.parse(rets2[results_list[k].detailUrlCount]);
|
||||
log('二级数据列表元素数:' + detailJson.list.length);
|
||||
result_data.forEach((d, _seq) => {
|
||||
let detailVodPic = detailJson.list.find(vod => vod.vod_id.toString() === d.vod_id.split('$')[1]);
|
||||
if (detailVodPic) {
|
||||
Object.assign(d, {
|
||||
vod_pic: detailVodPic.vod_pic
|
||||
});
|
||||
}
|
||||
});
|
||||
} catch (e) {
|
||||
log(`强制获取网站${result_data[0].site_name}的搜索图片失败:${e.message}`);
|
||||
}
|
||||
}
|
||||
results = results.concat(result_data);
|
||||
}
|
||||
} else {
|
||||
urls.forEach((_url, idx) => {
|
||||
let it = search_classes[idx];
|
||||
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_remarks = i.vod_remarks + '|' + it.type_name;
|
||||
});
|
||||
if (rule.search_match) {
|
||||
data = data.filter(item => item.vod_name && (new RegExp(KEY, 'i')).test(item.vod_name))
|
||||
}
|
||||
if (data.length > 0) {
|
||||
if (rule.search_pic && !data[0].vod_pic) {
|
||||
log(`当前搜索站点【${it.type_name}】没图片,尝试访问二级去获取图片`);
|
||||
let detailUrl = urls[idx].split('wd=')[0] + 'ac=detail&ids=' + data.map(k => k.vod_id.split('$')[1]).join(',');
|
||||
try {
|
||||
let detailJson = JSON.parse(request(detailUrl));
|
||||
log('二级数据列表元素数:' + detailJson.list.length);
|
||||
data.forEach((d, _seq) => {
|
||||
let detailVodPic = detailJson.list.find(vod => vod.vod_id.toString() === d.vod_id.split('$')[1]);
|
||||
if (detailVodPic) {
|
||||
Object.assign(d, {
|
||||
vod_pic: detailVodPic.vod_pic
|
||||
});
|
||||
}
|
||||
});
|
||||
} catch (e) {
|
||||
log(`强制获取网站${it.type_id}的搜索图片失败:${e.message}`);
|
||||
}
|
||||
}
|
||||
results = results.concat(data);
|
||||
}
|
||||
results = results.concat(data);
|
||||
} catch (e) {
|
||||
log(`请求:${it.type_id}发生错误:${e.message}`)
|
||||
}
|
||||
});
|
||||
}
|
||||
VODS = results;
|
||||
let t2 = new Date().getTime();
|
||||
log(`${searchMode}搜索:${urls.length}个站耗时:${(Number(t2) - Number(t1))}ms`)
|
||||
}
|
||||
}
|
||||
}
|
||||
}),
|
||||
lazy: $js.toString(() => {
|
||||
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 (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 = parse_url + input;
|
||||
}
|
||||
}
|
||||
}),
|
||||
}
|
||||
-598
@@ -1,598 +0,0 @@
|
||||
// 网址发布页 https://molicp.com
|
||||
muban.首图.二级.title = '.text-fff--font&&Text;.data--span:eq(0)&&Text';
|
||||
muban.首图.二级.desc = '#rating&&Text;;;.data--span:eq(1)&&Text;.data--span:eq(2)&&Text';
|
||||
muban.首图.二级.content = '.desc&&Text';
|
||||
var rule = {
|
||||
title: 'HDmoli',
|
||||
模板: '首图',
|
||||
host: 'https://www.hdmoli.pro',
|
||||
// url:'/mlist/fyclass-fypage.html',
|
||||
url: '/search.php?page=fypage&searchtype=5&tid=fyfilter',
|
||||
filterable: 1, //是否启用分类筛选,
|
||||
filter_url: '{{fl.cateId}}&jq={{fl.class}}&area={{fl.area}}&year={{fl.year}}&state={{fl.state}}&order={{fl.by}}',
|
||||
filter: {
|
||||
"1": [{
|
||||
"key": "cateId",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": "1"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "5"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "6"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "7"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "8"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "9"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "10"
|
||||
}, {
|
||||
"n": "纪录片",
|
||||
"v": "11"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "12"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "30"
|
||||
}, {
|
||||
"n": "动画",
|
||||
"v": "32"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "more",
|
||||
"v": "more"
|
||||
}]
|
||||
}, {
|
||||
"key": "state",
|
||||
"name": "状态",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}]
|
||||
}],
|
||||
"2": [{
|
||||
"key": "cateId",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": "2"
|
||||
}, {
|
||||
"n": "美剧",
|
||||
"v": "15"
|
||||
}, {
|
||||
"n": "韩剧",
|
||||
"v": "16"
|
||||
}, {
|
||||
"n": "日剧",
|
||||
"v": "13"
|
||||
}, {
|
||||
"n": "英剧",
|
||||
"v": "34"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "14"
|
||||
}, {
|
||||
"n": "泰剧",
|
||||
"v": "29"
|
||||
}, {
|
||||
"n": "综艺",
|
||||
"v": "39"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "38"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "more",
|
||||
"v": "more"
|
||||
}]
|
||||
}, {
|
||||
"key": "state",
|
||||
"name": "状态",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}]
|
||||
}],
|
||||
"41": [{
|
||||
"key": "cateId",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": "41"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "42"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "43"
|
||||
}]
|
||||
}, {
|
||||
"key": "class",
|
||||
"name": "剧情",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}]
|
||||
}, {
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}, {
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "more",
|
||||
"v": "more"
|
||||
}]
|
||||
}, {
|
||||
"key": "state",
|
||||
"name": "状态",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
}, {
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}]
|
||||
}, {
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
}, {
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
filter_def: {
|
||||
1: {
|
||||
cateId: '1',
|
||||
by: 'time'
|
||||
},
|
||||
2: {
|
||||
cateId: '2',
|
||||
by: 'time'
|
||||
},
|
||||
41: {
|
||||
cateId: '41',
|
||||
by: 'time'
|
||||
}
|
||||
},
|
||||
searchUrl: '/search.php?page=fypage&searchword=**&searchtype=',
|
||||
class_parse: '.myui-header__menu li;a&&Text;a&&href;.*/index(\\d+).html',
|
||||
}
|
||||
-5310
File diff suppressed because it is too large.
Load diff
@@ -1,97 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# by @嗷呜
|
||||
import sys
|
||||
sys.path.append('..')
|
||||
from base.spider import Spider
|
||||
|
||||
class Spider(Spider):
|
||||
|
||||
def init(self, extend=""):
|
||||
'''
|
||||
example:
|
||||
{
|
||||
"key": "py_appV2",
|
||||
"name": "xxx",
|
||||
"type": 3,
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"api": "./py/APPV2.py",
|
||||
"ext": "http://cmsyt.lyyytv.cn"
|
||||
}
|
||||
|
||||
'''
|
||||
self.host=extend
|
||||
pass
|
||||
|
||||
def getName(self):
|
||||
pass
|
||||
|
||||
def isVideoFormat(self, url):
|
||||
pass
|
||||
|
||||
def manualVideoCheck(self):
|
||||
pass
|
||||
|
||||
def destroy(self):
|
||||
pass
|
||||
|
||||
headers = {
|
||||
'User-Agent': 'okhttp/4.12.0',
|
||||
}
|
||||
|
||||
def homeContent(self, filter):
|
||||
data = self.fetch(f"{self.host}//api.php/app/nav?token=",headers=self.headers).json()
|
||||
keys = ["class", "area", "lang", "year", "letter", "by", "sort"]
|
||||
filters = {}
|
||||
classes = []
|
||||
for item in data['list']:
|
||||
has_non_empty_field = False
|
||||
jsontype_extend = item["type_extend"]
|
||||
classes.append({"type_name": item["type_name"], "type_id": item["type_id"]})
|
||||
for key in keys:
|
||||
if key in jsontype_extend and jsontype_extend[key].strip() != "":
|
||||
has_non_empty_field = True
|
||||
break
|
||||
if has_non_empty_field:
|
||||
filters[str(item["type_id"])] = []
|
||||
for dkey in jsontype_extend:
|
||||
if dkey in keys and jsontype_extend[dkey].strip() != "":
|
||||
values = jsontype_extend[dkey].split(",")
|
||||
value_array = [{"n": value.strip(), "v": value.strip()} for value in values if
|
||||
value.strip() != ""]
|
||||
filters[str(item["type_id"])].append({"key": dkey, "name": dkey, "value": value_array})
|
||||
result = {}
|
||||
result["class"] = classes
|
||||
result["filters"] = filters
|
||||
return result
|
||||
|
||||
def homeVideoContent(self):
|
||||
data=self.fetch(f"{self.host}/api.php/app/index_video?token=",headers=self.headers).json()
|
||||
videos=[]
|
||||
for item in data['list']:videos.extend(item['vlist'])
|
||||
return {'list':videos}
|
||||
|
||||
def categoryContent(self, tid, pg, filter, extend):
|
||||
params = {'tid':tid,'class':extend.get('class',''),'area':extend.get('area',''),'lang':extend.get('lang',''),'year':extend.get('year',''),'limit':'18','pg':pg}
|
||||
data=self.fetch(f"{self.host}/api.php/app/video",params=params,headers=self.headers).json()
|
||||
return data
|
||||
|
||||
def detailContent(self, ids):
|
||||
data=self.fetch(f"{self.host}/api.php/app/video_detail?id={ids[0]}",headers=self.headers).json()
|
||||
return {'list':[data['data']]}
|
||||
|
||||
def searchContent(self, key, quick, pg="1"):
|
||||
data=self.fetch(f"{self.host}/api.php/app/search?text={key}&pg={pg}",headers=self.headers).json()
|
||||
videos=data['list']
|
||||
for item in data['list']:
|
||||
item.pop('type', None)
|
||||
return {'list':videos,'page':pg}
|
||||
|
||||
def playerContent(self, flag, id, vipFlags):
|
||||
return {'jx':1,'playUrl':'','parse': 1, 'url': id, 'header': self.headers}
|
||||
|
||||
def localProxy(self, param):
|
||||
pass
|
||||
|
||||
|
||||
-222
@@ -1,222 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# by @嗷呜
|
||||
import re
|
||||
import sys
|
||||
from Crypto.Hash import MD5
|
||||
sys.path.append('..')
|
||||
from Crypto.Cipher import AES
|
||||
from Crypto.Util.Padding import pad, unpad
|
||||
from urllib.parse import quote, urlparse
|
||||
from base64 import b64encode, b64decode
|
||||
import json
|
||||
import time
|
||||
from base.spider import Spider
|
||||
|
||||
class Spider(Spider):
|
||||
|
||||
def init(self, extend=""):
|
||||
self.host = self.gethost()
|
||||
pass
|
||||
|
||||
def getName(self):
|
||||
pass
|
||||
|
||||
|
||||
def isVideoFormat(self, url):
|
||||
pass
|
||||
|
||||
def manualVideoCheck(self):
|
||||
pass
|
||||
|
||||
def action(self, action):
|
||||
pass
|
||||
|
||||
def destroy(self):
|
||||
pass
|
||||
|
||||
def homeContent(self, filter):
|
||||
data = self.getdata("/api.php/getappapi.index/initV119")
|
||||
dy = {"class": "类型", "area": "地区", "lang": "语言", "year": "年份", "letter": "字母", "by": "排序",
|
||||
"sort": "排序"}
|
||||
filters = {}
|
||||
classes = []
|
||||
json_data = data["type_list"]
|
||||
homedata = data["banner_list"][8:]
|
||||
for item in json_data:
|
||||
if item["type_name"] == "全部":
|
||||
continue
|
||||
has_non_empty_field = False
|
||||
jsontype_extend = json.loads(item["type_extend"])
|
||||
homedata.extend(item["recommend_list"])
|
||||
jsontype_extend["sort"] = "最新,最热,最赞"
|
||||
classes.append({"type_name": item["type_name"], "type_id": item["type_id"]})
|
||||
for key in dy:
|
||||
if key in jsontype_extend and jsontype_extend[key].strip() != "":
|
||||
has_non_empty_field = True
|
||||
break
|
||||
if has_non_empty_field:
|
||||
filters[str(item["type_id"])] = []
|
||||
for dkey in jsontype_extend:
|
||||
if dkey in dy and jsontype_extend[dkey].strip() != "":
|
||||
values = jsontype_extend[dkey].split(",")
|
||||
value_array = [{"n": value.strip(), "v": value.strip()} for value in values if
|
||||
value.strip() != ""]
|
||||
filters[str(item["type_id"])].append({"key": dkey, "name": dy[dkey], "value": value_array})
|
||||
result = {}
|
||||
result["class"] = classes
|
||||
result["filters"] = filters
|
||||
result["list"] = homedata[1:]
|
||||
return result
|
||||
|
||||
def homeVideoContent(self):
|
||||
pass
|
||||
|
||||
def categoryContent(self, tid, pg, filter, extend):
|
||||
body = {"area": extend.get('area', '全部'), "year": extend.get('year', '全部'), "type_id": tid, "page": pg,
|
||||
"sort": extend.get('sort', '最新'), "lang": extend.get('lang', '全部'),
|
||||
"class": extend.get('class', '全部')}
|
||||
result = {}
|
||||
data = self.getdata("/api.php/getappapi.index/typeFilterVodList", body)
|
||||
result["list"] = data["recommend_list"]
|
||||
result["page"] = pg
|
||||
result["pagecount"] = 9999
|
||||
result["limit"] = 90
|
||||
result["total"] = 999999
|
||||
return result
|
||||
|
||||
def detailContent(self, ids):
|
||||
body = f"vod_id={ids[0]}"
|
||||
data = self.getdata("/api.php/getappapi.index/vodDetail", body)
|
||||
vod = data["vod"]
|
||||
play = []
|
||||
names = []
|
||||
for itt in data["vod_play_list"]:
|
||||
a = []
|
||||
names.append(itt["player_info"]["show"])
|
||||
for it in itt['urls']:
|
||||
it['user_agent']=itt["player_info"].get("user_agent")
|
||||
it["parse"]=itt["player_info"].get("parse")
|
||||
a.append(f"{it['name']}${self.e64(json.dumps(it))}")
|
||||
play.append("#".join(a))
|
||||
vod["vod_play_from"] = "$$$".join(names)
|
||||
vod["vod_play_url"] = "$$$".join(play)
|
||||
result = {"list": [vod]}
|
||||
return result
|
||||
|
||||
def searchContent(self, key, quick, pg="1"):
|
||||
body = f"keywords={key}&type_id=0&page={pg}"
|
||||
data = self.getdata("/api.php/getappapi.index/searchList", body)
|
||||
result = {"list": data["search_list"], "page": pg}
|
||||
return result
|
||||
|
||||
def playerContent(self, flag, id, vipFlags):
|
||||
ids = json.loads(self.d64(id))
|
||||
h = {"User-Agent": (ids['user_agent'] or "okhttp/3.14.9")}
|
||||
try:
|
||||
if re.search(r'url=', ids['parse_api_url']):
|
||||
data = self.fetch(ids['parse_api_url'], headers=h, timeout=10).json()
|
||||
url = data.get('url') or data['data'].get('url')
|
||||
else:
|
||||
body = f"parse_api={ids.get('parse') or ids['parse_api_url'].replace(ids['url'], '')}&url={quote(self.aes(ids['url'], True))}&token={ids.get('token')}"
|
||||
b = self.getdata("/api.php/getappapi.index/vodParse", body)['json']
|
||||
url = json.loads(b)['url']
|
||||
if 'error' in url: raise ValueError(f"解析失败: {url}")
|
||||
p = 0
|
||||
except Exception as e:
|
||||
print('错误信息:', e)
|
||||
url, p = ids['url'], 1
|
||||
|
||||
if re.search(r'\.jpg|\.png|\.jpeg', url):
|
||||
url = self.Mproxy(url)
|
||||
result = {}
|
||||
result["parse"] = p
|
||||
result["url"] = url
|
||||
result["header"] = h
|
||||
return result
|
||||
|
||||
def localProxy(self, param):
|
||||
return self.Mlocal(param)
|
||||
|
||||
def gethost(self):
|
||||
headers = {
|
||||
'User-Agent': 'okhttp/3.14.9'
|
||||
}
|
||||
host = self.fetch('https://jingyu-1312635929.cos.ap-nanjing.myqcloud.com/1.json',
|
||||
headers=headers).text.strip()
|
||||
return host
|
||||
|
||||
phend = {
|
||||
'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 11; M2012K10C Build/RP1A.200720.011)',
|
||||
'allowCrossProtocolRedirects': 'true'
|
||||
}
|
||||
|
||||
def aes(self, operation, text):
|
||||
key = "4d83b87c4c5ea111".encode("utf-8")
|
||||
iv = key
|
||||
if operation == "encrypt":
|
||||
cipher = AES.new(key, AES.MODE_CBC, iv)
|
||||
ct_bytes = cipher.encrypt(pad(text.encode("utf-8"), AES.block_size))
|
||||
ct = b64encode(ct_bytes).decode("utf-8")
|
||||
return ct
|
||||
elif operation == "decrypt":
|
||||
cipher = AES.new(key, AES.MODE_CBC, iv)
|
||||
pt = unpad(cipher.decrypt(b64decode(text)), AES.block_size)
|
||||
return pt.decode("utf-8")
|
||||
|
||||
def header(self):
|
||||
t = str(int(time.time()))
|
||||
header = {"Referer":self.host,
|
||||
"User-Agent": "okhttp/3.14.9", "app-version-code": "300", "app-ui-mode": "light",
|
||||
"app-api-verify-time": t, "app-user-device-id": self.md5(t),
|
||||
"app-api-verify-sign": self.aes("encrypt", t),
|
||||
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"}
|
||||
return header
|
||||
|
||||
def getdata(self, path, data=None):
|
||||
vdata = self.post(f"{self.host}{path}", headers=self.header(), data=data, timeout=10).json()['data']
|
||||
data1 = self.aes("decrypt", vdata)
|
||||
return json.loads(data1)
|
||||
|
||||
def Mproxy(self, url):
|
||||
return self.getProxyUrl() + "&url=" + b64encode(url.encode('utf-8')).decode('utf-8') + "&type=m3u8"
|
||||
|
||||
def Mlocal(self, param,header=None):
|
||||
url = self.d64(param["url"])
|
||||
ydata = self.fetch(url, headers=header, allow_redirects=False)
|
||||
data = ydata.content.decode('utf-8')
|
||||
if ydata.headers.get('Location'):
|
||||
url = ydata.headers['Location']
|
||||
data = self.fetch(url, headers=header).content.decode('utf-8')
|
||||
parsed_url = urlparse(url)
|
||||
durl = parsed_url.scheme + "://" + parsed_url.netloc
|
||||
lines = data.strip().split('\n')
|
||||
for index, string in enumerate(lines):
|
||||
if '#EXT' not in string and 'http' not in string:
|
||||
last_slash_index = string.rfind('/')
|
||||
lpath = string[:last_slash_index + 1]
|
||||
lines[index] = durl + ('' if lpath.startswith('/') else '/') + lpath
|
||||
data = '\n'.join(lines)
|
||||
return [200, "application/vnd.apple.mpegur", data]
|
||||
|
||||
def e64(self, text):
|
||||
try:
|
||||
text_bytes = text.encode('utf-8')
|
||||
encoded_bytes = b64encode(text_bytes)
|
||||
return encoded_bytes.decode('utf-8')
|
||||
except Exception as e:
|
||||
print(f"Base64编码错误: {str(e)}")
|
||||
return ""
|
||||
|
||||
def d64(self,encoded_text):
|
||||
try:
|
||||
encoded_bytes = encoded_text.encode('utf-8')
|
||||
decoded_bytes = b64decode(encoded_bytes)
|
||||
return decoded_bytes.decode('utf-8')
|
||||
except Exception as e:
|
||||
print(f"Base64解码错误: {str(e)}")
|
||||
return ""
|
||||
|
||||
def md5(self, text):
|
||||
h = MD5.new()
|
||||
h.update(text.encode('utf-8'))
|
||||
return h.hexdigest()
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"数组": "card card-sm card-link&&</div>",
|
||||
"图片": "src=\"&&\"",
|
||||
"标题": "mb-0 card-title text-truncate\">&&<",
|
||||
"副标题": "start-0 text-red-fg\">&&</span>",
|
||||
"链接": "href=\"&&\"",
|
||||
"简介": "剧情简介:&&\"",
|
||||
"线路标题": "磁力+>&&<",
|
||||
"播放数组": "download-list&&</tbody>",
|
||||
"播放列表": "<tr&&</tr>",
|
||||
"播放标题": "text-muted\">&&</td>[不包含:网盘下载]",
|
||||
"跳转播放链接": "href=\"&&\"",
|
||||
"分类url": "https://v.xlys.ltd.ua/s/all/{catePg}?type={cateId};;d0",
|
||||
"分类": "电影$0#电视剧$1"
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"请求头": "手机",
|
||||
"编码": "UTF-8",
|
||||
"简介": "简 介:&&</p>",
|
||||
"线路数组": "javascript:;\">&&</a>",
|
||||
"数组": "<li>&&</li>",
|
||||
"图片": "data-echo=\"&&\"",
|
||||
"分类url": "https://vip.wwgz.cn:5200/vod-list-id-{cateId}-pg-{catePg}-order--by-time-class-0-year-{year}-letter--area-{area}-lang-.html",
|
||||
"分类": "电影$1#电视剧$2#动漫$4#综艺$3#短剧$26"
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"请求头": "User-Agent$MOBILE_UA",
|
||||
"编码": "UTF-8",
|
||||
"主页url": "https://dora.xiaoxinbk.com/",
|
||||
"数组": "class=\"card-img-bili\"&&</a>",
|
||||
"标题": "alt=\"&&\"",
|
||||
"图片": "data-url=\"&&\"",
|
||||
"链接": "href=\"&&\"",
|
||||
"线路标题": "mt-0\">&&</h3>",
|
||||
"播放数组": "class=\"card-body button-list\"&&</div>",
|
||||
"播放列表": "<a&&a>",
|
||||
"播放链接": "href=\"&&\"",
|
||||
"播放标题": ">&&</",
|
||||
"分类url": "https://www.dora-video.cn/search/sy/?niandai={year}&cat={class}&tag={cateId}&gaojijiansuo=1&zhuangtai={by}",
|
||||
"分类": "全部$0#动画$20#剧场版$21#MV$22#预告片$23#直播$27#同人$25#民间$26#目录$28#中篇$30",
|
||||
"剧情": "哆啦A梦新番$1#新哆啦A梦 台湾配音$2#哆啦A梦剧场版$3#最新预告片$6#剧场版集合$7#哆啦A梦MV$4#哆啦A梦七小子集合$11#生日特别篇$19#哆啦A梦生日特别篇$12#哆啦美生日特别篇$14#大雄生日特别篇$13#静香生日特别篇$15#胖虎生日特别篇$16#小夫生日特别篇$17#24小时直播$24#哆啦A梦中篇附映$29#哆啦A梦大山版 - 哆啦a梦1979版国语旧版 - 旧版$31#哆啦A梦大山修复&补档区$32#藤子·F·不二雄【其它动画】$33",
|
||||
"排序": "全部$0#完结$2#连载$1#待定$-1"
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
"分类": "短剧$duanju#电影$dianying#电视剧$dianshiju#动漫$dongman#综艺$zongyi",
|
||||
"分类url": "https://www.duanjuwang.cc/vodtype/{cateId}/page/{catePg}.html"
|
||||
}
|
||||
@@ -1,81 +0,0 @@
|
||||
{
|
||||
"规则名": "短剧屋",
|
||||
"规则作者": "",
|
||||
"请求头参数": "手机",
|
||||
"网页编码格式": "UTF-8",
|
||||
"图片是否需要代理": "0",
|
||||
"是否开启获取首页数据": "1",
|
||||
"首页推荐链接": "http://www.metaysw.com",
|
||||
"首页列表数组规则": "body&&.vod-vodlist",
|
||||
"首页片单列表数组规则": "li",
|
||||
"首页片单是否Jsoup写法": "1",
|
||||
"分类起始页码": "1",
|
||||
"分类链接": "http://www.metaysw.com/type/{cateId}-{catePg}.html",
|
||||
"分类名称": "短剧",
|
||||
"分类名称替换词": "lianxuju",
|
||||
"筛选数据": {},
|
||||
//"筛选数据": "ext",
|
||||
//{cateId}
|
||||
"筛选子分类名称": "",
|
||||
"筛选子分类替换词": "",
|
||||
//{class}
|
||||
"筛选类型名称": "",
|
||||
"筛选类型替换词": "*",
|
||||
//{area}
|
||||
"筛选地区名称": "",
|
||||
"筛选地区替换词": "*",
|
||||
//{year}
|
||||
"筛选年份名称": "",
|
||||
"筛选年份替换词": "*",
|
||||
//{lang}
|
||||
"筛选语言名称": "",
|
||||
"筛选语言替换词": "*",
|
||||
//{by}
|
||||
"筛选排序名称": "时间&人气&评分",
|
||||
"筛选排序替换词": "time&hits&score",
|
||||
"分类截取模式": "1",
|
||||
"分类列表数组规则": ".vod-vodlist&&li",
|
||||
"分类片单是否Jsoup写法": "1",
|
||||
"分类片单标题": ".vod-vodlist__title&&Text",
|
||||
"分类片单链接": "a&&href",
|
||||
"分类片单图片": ".lazyload&&data-original",
|
||||
"分类片单副标题": ".pic-text&&Text",
|
||||
"分类片单链接加前缀": "http://www.metaysw.com",
|
||||
"分类片单链接加后缀": "",
|
||||
"搜索请求头参数": "User-Agent$手机",
|
||||
"搜索链接": "http://www.metaysw.com/search/page/{SearchPg}/wd/{wd}.html",
|
||||
"POST请求数据": "",
|
||||
"搜索截取模式": "1",
|
||||
"搜索列表数组规则": ".vod-vodlist&&li",
|
||||
"搜索片单是否Jsoup写法": "1",
|
||||
"搜索片单图片": ".lazyload&&data-original",
|
||||
"搜索片单标题": ".vod-vodlist__title&&Text",
|
||||
"搜索片单链接": "a&&href",
|
||||
"搜索片单副标题": ".pic-text&&Text",
|
||||
"搜索片单链接加前缀": "http://www.metaysw.com",
|
||||
"搜索片单链接加后缀": "",
|
||||
"链接是否直接播放": "0",
|
||||
"直接播放链接加前缀": "https://live.52sf.ga/huya/",
|
||||
"直接播放链接加后缀": "#isVideo=true#",
|
||||
"直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online",
|
||||
"详情是否Jsoup写法": "1",
|
||||
"类型详情": "",
|
||||
"年代详情": "",
|
||||
"地区详情": "",
|
||||
"演员详情": ".vod-content__detail&&p,2&&Text!主演:",
|
||||
"简介详情": "",
|
||||
"线路列表数组规则": ".dropdown-menu&&li",
|
||||
"线路标题": "a&&Text",
|
||||
"播放列表数组规则": "body&&.vod-content__playlist",
|
||||
"选集列表数组规则": "li",
|
||||
"选集标题链接是否Jsoup写法": "1",
|
||||
"选集标题": "a&&Text",
|
||||
"选集链接": "a&&href",
|
||||
"是否反转选集序列": "0",
|
||||
"选集链接加前缀": "http://www.metaysw.com",
|
||||
"选集链接加后缀": "",
|
||||
"分析MacPlayer": "0",
|
||||
"是否开启手动嗅探": "0",
|
||||
"手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos",
|
||||
"手动嗅探视频链接过滤词": ".html#=http"
|
||||
}
|
||||
+141
-165
@@ -455,7 +455,7 @@
|
||||
"ratio": 1.433
|
||||
},
|
||||
"ext": {
|
||||
"json": "./json/哔哩视频.json",
|
||||
"json": "./json/BLSP.json",
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt"
|
||||
}
|
||||
},
|
||||
@@ -463,29 +463,29 @@
|
||||
"key": "腾讯视频",
|
||||
"name": "腾讯|视频",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/腾讯视频.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/TXSP.js"
|
||||
},
|
||||
{
|
||||
"key": "优酷视频",
|
||||
"name": "优酷|视频",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/优酷视频.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/YKSP.js"
|
||||
},
|
||||
{
|
||||
"key": "芒果视频",
|
||||
"name": "芒果|视频",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/芒果视频.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/MGSP.js"
|
||||
},
|
||||
{
|
||||
"key": "爱奇艺",
|
||||
"name": "爱奇异|视频",
|
||||
"name": "爱奇艺|视频",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/爱奇艺.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/AQY.js"
|
||||
},
|
||||
{
|
||||
"key": "三六零",
|
||||
@@ -701,8 +701,8 @@
|
||||
"key": "双星",
|
||||
"name": "双星|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/双星.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/SX.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -711,8 +711,8 @@
|
||||
"key": "懒盘",
|
||||
"name": "懒盘|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/懒盘.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/LP.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -721,8 +721,8 @@
|
||||
"key": "百酷",
|
||||
"name": "百酷|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/百酷.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/BK.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -731,8 +731,8 @@
|
||||
"key": "校长",
|
||||
"name": "校长|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/校长.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/XZ.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -741,8 +741,8 @@
|
||||
"key": "人人电影网",
|
||||
"name": "人人|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/人人电影网.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "../js/RRDYW.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -751,8 +751,8 @@
|
||||
"key": "爱UC",
|
||||
"name": "爱UC|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/爱UC.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/AUC.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -761,8 +761,8 @@
|
||||
"key": "爱Quark",
|
||||
"name": "爱Quark|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/爱Quark.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/AKK.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -771,8 +771,8 @@
|
||||
"key": "爱Baidu",
|
||||
"name": "爱Baidu|4K弹幕",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/爱Baidu.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/ABD.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -799,8 +799,8 @@
|
||||
"key": "米搜",
|
||||
"name": "米搜|搜索",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/米搜.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/MS.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -809,8 +809,8 @@
|
||||
"key": "人人分享站",
|
||||
"name": "人人|搜索",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/人人分享站.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/RR.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -819,8 +819,8 @@
|
||||
"key": "全盘",
|
||||
"name": "全盘|搜索",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/全盘.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/QP.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -829,8 +829,8 @@
|
||||
"key": "夸克盘搜",
|
||||
"name": "盘搜|搜索",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/夸克盘搜.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/KKPS.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -848,7 +848,7 @@
|
||||
"key": "偷乐短剧",
|
||||
"name": "偷乐|短剧",
|
||||
"type": 3,
|
||||
"api": "./py/偷乐短剧.py",
|
||||
"api": "./api/TLDJ.py",
|
||||
"searchable": 1,
|
||||
"changeable": 1,
|
||||
"quickSearch": 1,
|
||||
@@ -859,8 +859,8 @@
|
||||
"key": "短剧网",
|
||||
"name": "短剧网|短剧",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/短剧网.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/DJWang.json"
|
||||
},
|
||||
{
|
||||
"key": "短剧屋",
|
||||
@@ -870,7 +870,7 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/短剧屋.json"
|
||||
"ext": "./json/DJWu.json"
|
||||
},
|
||||
{
|
||||
"key": "满分",
|
||||
@@ -914,20 +914,20 @@
|
||||
"key": "金牌影视",
|
||||
"name": "金牌|影视",
|
||||
"type": 3,
|
||||
"api": "./py/金牌影视.py",
|
||||
"api": "./api/JPYS.py",
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"playerType": 2,
|
||||
"ext": {
|
||||
"site": "https://www.hkybqufgh.com,https://www.sizhengxt.com,https://0996zp.com,https://9zhoukj.com/,https://www.sizhengxt.com,https://www.tjrongze.com,https://www.jiabaide.cn,https://cqzuoer.com"
|
||||
"site": "https://m.hkybqufgh.com,https://m.sizhengxt.com,https://m.9zhoukj.com,https://m.sizhengxt.com,https://m.jiabaide.cn"
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "猎手影视",
|
||||
"name": "猎手|影视",
|
||||
"type": 3,
|
||||
"api": "./py/猎手影视.py",
|
||||
"api": "./api/LSYS.py",
|
||||
"searchable": 1,
|
||||
"changeable": 1,
|
||||
"quickSearch": 1,
|
||||
@@ -938,7 +938,7 @@
|
||||
"key": "美帕影视",
|
||||
"name": "美帕|影视",
|
||||
"type": 3,
|
||||
"api": "./py/美帕影视.py",
|
||||
"api": "./api/MPYS.py",
|
||||
"searchable": 1,
|
||||
"changeable": 1,
|
||||
"quickSearch": 1,
|
||||
@@ -1011,7 +1011,7 @@
|
||||
"name": "绝对|影视",
|
||||
"type": 3,
|
||||
"api": "csp_FourK",
|
||||
"ext": "https://www.4kvm.tv"
|
||||
"ext": "https://www.4kvm.net"
|
||||
},
|
||||
{
|
||||
"key": "白白影视",
|
||||
@@ -1060,8 +1060,8 @@
|
||||
"key": "采集之王",
|
||||
"name": "采集|合集",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/采集之王.js?type=url¶ms=../json/采集静态.json$1$1"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/CJZW.js?type=url¶ms=./json/CJJT.json$1$1"
|
||||
},
|
||||
{
|
||||
"key": "爱看机器人",
|
||||
@@ -1076,64 +1076,64 @@
|
||||
"key": "可可影视",
|
||||
"name": "可可|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/可可影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/KKYS.json"
|
||||
},
|
||||
{
|
||||
"key": "海纳影视",
|
||||
"name": "海纳|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/海纳影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/HNYS.json"
|
||||
},
|
||||
{
|
||||
"key": "面包影视",
|
||||
"name": "面包|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/面包影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/MBYS.json"
|
||||
},
|
||||
{
|
||||
"key": "永乐影视",
|
||||
"name": "永乐|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/永乐影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/YLYS.json"
|
||||
},
|
||||
{
|
||||
"key": "雪糕影视",
|
||||
"name": "雪糕|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/雪糕影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/XGYS.json"
|
||||
},
|
||||
{
|
||||
"key": "骚火影视",
|
||||
"name": "骚火|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/骚火影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/SHYS.json"
|
||||
},
|
||||
{
|
||||
"key": "七点影视",
|
||||
"name": "七点|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/七点影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/QDYS.json"
|
||||
},
|
||||
{
|
||||
"key": "三九影视",
|
||||
"name": "三九|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/三九影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/SJYS.json"
|
||||
},
|
||||
{
|
||||
"key": "三四影视",
|
||||
"name": "三四|影视",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/三四影视.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/SSYS.json"
|
||||
},
|
||||
{
|
||||
"key": "耐看影视",
|
||||
@@ -1149,22 +1149,22 @@
|
||||
"key": "思古影视",
|
||||
"name": "思古|影视",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/思古影视.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/SGYS.js"
|
||||
},
|
||||
{
|
||||
"key": "魔力高清",
|
||||
"name": "魔力|影视",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/魔力高清.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/MLGQ.js"
|
||||
},
|
||||
{
|
||||
"key": "碟调影视",
|
||||
"name": "碟调|影视",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/碟调影视.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/DDYS.js"
|
||||
},
|
||||
{
|
||||
"key": "农民影视",
|
||||
@@ -1174,7 +1174,7 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/农民影视.json"
|
||||
"ext": "./json/NMYS.json"
|
||||
},
|
||||
{
|
||||
"key": "盒子影视",
|
||||
@@ -1184,7 +1184,7 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/盒子影视.json"
|
||||
"ext": "./json/HZYS.json"
|
||||
},
|
||||
{
|
||||
"key": "电影牛",
|
||||
@@ -1194,21 +1194,21 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/电影牛.json"
|
||||
"ext": "./json/DYN.json"
|
||||
},
|
||||
{
|
||||
"key": "剧圈圈",
|
||||
"name": "剧圈圈|影视",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/剧圈圈.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/JQQ.js"
|
||||
},
|
||||
{
|
||||
"key": "看了么",
|
||||
"name": "看了么|影视",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/看了么.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/KLM.js"
|
||||
},
|
||||
{
|
||||
"key": "1905",
|
||||
@@ -1240,31 +1240,31 @@
|
||||
"key": "哆啦新番社",
|
||||
"name": "哆啦|新番社",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"api": "csp_XBPQ",
|
||||
"style": {
|
||||
"type": "list"
|
||||
},
|
||||
"ext": "./XBPQ/哆啦新番社.json"
|
||||
"ext": "./json/.json"
|
||||
},
|
||||
{
|
||||
"key": "56动漫",
|
||||
"name": "56|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/56动漫.js"
|
||||
},
|
||||
{
|
||||
"key": "NT动漫",
|
||||
"name": "NT|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/NT动漫.js"
|
||||
},
|
||||
{
|
||||
"key": "Anime1",
|
||||
"name": "A1|动漫",
|
||||
"name": "Anime1|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/Anime1.js"
|
||||
},
|
||||
{
|
||||
@@ -1327,85 +1327,85 @@
|
||||
"key": "樱花动漫",
|
||||
"name": "樱花|动漫",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/樱花动漫.json"
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/YHDM.json"
|
||||
},
|
||||
{
|
||||
"key": "巴士动漫",
|
||||
"name": "巴士|动漫",
|
||||
"type": 3,
|
||||
"api": "csp_XYQHiker",
|
||||
"ext": "./XYQHiker/巴士动漫.json"
|
||||
"ext": "./json/bsdm.json"
|
||||
},
|
||||
{
|
||||
"key": "好看动漫",
|
||||
"name": "好看|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/好看动漫.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/HKDM.js"
|
||||
},
|
||||
{
|
||||
"key": "奇米动漫",
|
||||
"name": "奇米|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/奇米动漫.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/QMDM.js"
|
||||
},
|
||||
{
|
||||
"key": "怡萱动漫",
|
||||
"name": "怡萱|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/怡萱动漫.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/YXDM.js"
|
||||
},
|
||||
{
|
||||
"key": "花子动漫",
|
||||
"name": "花子|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/花子动漫.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/HZDM.js"
|
||||
},
|
||||
{
|
||||
"key": "动画片",
|
||||
"name": "动画片|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/动画片大全.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/DHPDQ.js"
|
||||
},
|
||||
{
|
||||
"key": "路漫漫",
|
||||
"name": "路漫漫|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/路漫漫.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/LMM.js"
|
||||
},
|
||||
{
|
||||
"key": "动漫岛",
|
||||
"name": "动漫岛|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/动漫岛.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/DMD.js"
|
||||
},
|
||||
{
|
||||
"key": "去看吧",
|
||||
"name": "去看吧|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/去看吧.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/QKB.js"
|
||||
},
|
||||
{
|
||||
"key": "爱弹幕",
|
||||
"name": "爱弹幕|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/爱弹幕.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/ADM.js"
|
||||
},
|
||||
{
|
||||
"key": "异世界",
|
||||
"name": "异世界|动漫",
|
||||
"type": 3,
|
||||
"api": "./js/drpy2.min.js",
|
||||
"ext": "./js/异世界.js"
|
||||
"api": "./api/drpy2.min.js",
|
||||
"ext": "./js/YSJ.js"
|
||||
},
|
||||
{
|
||||
"key": "荐片",
|
||||
@@ -1419,11 +1419,11 @@
|
||||
"key": "修罗影视",
|
||||
"name": "修罗|磁力",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"api": "csp_XBPQ",
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XBPQ/修罗影视.json"
|
||||
"ext": "./json/XLYS.json"
|
||||
},
|
||||
{
|
||||
"key": "七味",
|
||||
@@ -1489,28 +1489,28 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/电影港.json"
|
||||
"ext": "./json/DYG.json"
|
||||
},
|
||||
{
|
||||
"key": "狐狸君",
|
||||
"name": "狐狸君|磁力",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"api": "csp_XBPQ",
|
||||
"changeable": 1,
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XBPQ/狐狸君.json"
|
||||
"ext": "./json/HLJ.json"
|
||||
},
|
||||
{
|
||||
"key": "布谷TV",
|
||||
"name": "布谷TV|磁力",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"api": "csp_XBPQ",
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XBPQ/布谷TV.json"
|
||||
"ext": "./json/BGTV.json"
|
||||
},
|
||||
{
|
||||
"key": "BT天堂",
|
||||
@@ -1520,7 +1520,7 @@
|
||||
"searchable": 1,
|
||||
"quickSearch": 1,
|
||||
"filterable": 1,
|
||||
"ext": "./XYQHiker/BT天堂.json"
|
||||
"ext": "./json/BTTT.json"
|
||||
},
|
||||
{
|
||||
"key": "Mp4电影",
|
||||
@@ -1617,8 +1617,8 @@
|
||||
"key": "短剧合集",
|
||||
"name": "短剧|合集",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/短剧合集.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/DJHJ.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -1627,8 +1627,8 @@
|
||||
"key": "短剧大全",
|
||||
"name": "短剧|大全",
|
||||
"type": 3,
|
||||
"api": "./js/cloud.min.js",
|
||||
"ext": "./js/短剧大全.js",
|
||||
"api": "./api/cloud.min.js",
|
||||
"ext": "./js/DJDQ.js",
|
||||
"style": {
|
||||
"type": "list"
|
||||
}
|
||||
@@ -1650,7 +1650,7 @@
|
||||
"key": "网络直播",
|
||||
"name": "网络|直播",
|
||||
"type": 3,
|
||||
"api": "./py/网络直播.py"
|
||||
"api": "./api/WLZB.py"
|
||||
},
|
||||
{
|
||||
"key": "88看球",
|
||||
@@ -1676,12 +1676,12 @@
|
||||
"ratio": 1.433
|
||||
},
|
||||
"ext": {
|
||||
"json": "./json/哔哩合集.json",
|
||||
"json": "./json/BLHJ.json",
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt"
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "哔哩哔哩演唱会",
|
||||
"key": "哔哩哔哩戏曲",
|
||||
"name": "哔哩|音乐",
|
||||
"type": 3,
|
||||
"api": "csp_Bili",
|
||||
@@ -1690,7 +1690,7 @@
|
||||
"filterable": 0,
|
||||
"ext": {
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
|
||||
"json": "./json/哔哩哔哩演唱会.json"
|
||||
"json": "./json/BLYCH.json"
|
||||
},
|
||||
"style": {
|
||||
"type": "rect",
|
||||
@@ -1707,7 +1707,7 @@
|
||||
"filterable": 0,
|
||||
"ext": {
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
|
||||
"json": "./json/哔哩哔哩听书.json"
|
||||
"json": "./json/BLTS.json"
|
||||
},
|
||||
"style": {
|
||||
"type": "rect",
|
||||
@@ -1724,7 +1724,7 @@
|
||||
"filterable": 0,
|
||||
"ext": {
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
|
||||
"json": "./json/哔哩哔哩相声.json"
|
||||
"json": "./json/BLXS.json"
|
||||
},
|
||||
"style": {
|
||||
"type": "rect",
|
||||
@@ -1741,7 +1741,7 @@
|
||||
"filterable": 0,
|
||||
"ext": {
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
|
||||
"json": "./json/哔哩哔哩小品.json"
|
||||
"json": "./json/BLXP.json"
|
||||
},
|
||||
"style": {
|
||||
"type": "rect",
|
||||
@@ -1758,7 +1758,7 @@
|
||||
"filterable": 0,
|
||||
"ext": {
|
||||
"cookie": "http://127.0.0.1:9978/file/TVBox/bili_cookie.txt",
|
||||
"json": "./json/哔哩哔哩戏曲.json"
|
||||
"json": "./json/BLXQ.json"
|
||||
},
|
||||
"style": {
|
||||
"type": "rect",
|
||||
@@ -1783,23 +1783,13 @@
|
||||
"key": "养生堂",
|
||||
"name": "养生|知识",
|
||||
"type": 3,
|
||||
"api": "csp_HBPQ",
|
||||
"ext": "./XBPQ/养生堂.json",
|
||||
"api": "csp_XBPQ",
|
||||
"ext": "./json/YST.json",
|
||||
"style": {
|
||||
"type": "rect",
|
||||
"ratio": 1.597
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "版本信息",
|
||||
"name": "版本|信息",
|
||||
"type": 3,
|
||||
"api": "csp_Market",
|
||||
"searchable": 0,
|
||||
"changeable": 0,
|
||||
"indexs": 0,
|
||||
"ext": "https://9877.kstore.space/Market/single.json"
|
||||
},
|
||||
{
|
||||
"key": "push_agent",
|
||||
"name": "手机|推送",
|
||||
@@ -1841,7 +1831,7 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "巧计",
|
||||
"name": "QD4K",
|
||||
"type": 1,
|
||||
"url": "https://zy.qiaoji8.com/xiafan.php?url=",
|
||||
"ext": {
|
||||
@@ -2037,78 +2027,64 @@
|
||||
{
|
||||
"name": "AI直播",
|
||||
"type": 0,
|
||||
"url": "https://github.3x25.com/https://raw.githubusercontent.com/PizazzGY/TV/master/output/user_result.txt",
|
||||
"epg": "http://cdn.1678520.xyz/epg/?ch={name}&date={date}",
|
||||
"playerType": 1,
|
||||
"timeout": 10
|
||||
"url": "./lives/AI直播.txt",
|
||||
"epg": "http://cdn.1678520.xyz/epg/?ch={name}&date={date}"
|
||||
},
|
||||
{
|
||||
"name": "Guovin",
|
||||
"type": 0,
|
||||
"url": "https://gitee.com/mytv-android/iptv-api/raw/master/output/result.m3u",
|
||||
"epg": "http://cdn.1678520.xyz/epg/?ch={name}&date={date}",
|
||||
"timeout": 10
|
||||
"url": "./lives/Guovin.txt",
|
||||
"epg": "http://cdn.1678520.xyz/epg/?ch={name}&date={date}"
|
||||
},
|
||||
{
|
||||
"name": "虎牙一起看",
|
||||
"type": 3,
|
||||
"api": "csp_Feiyang",
|
||||
"url": "https://yun.urldwz.com/f/BE9PSL/huyayqk.m3u",
|
||||
"timeout": 10,
|
||||
"url": "./lives/虎牙一起看.txt",
|
||||
"ua": "okhttp/3.15"
|
||||
},
|
||||
{
|
||||
"name": "斗鱼一起看",
|
||||
"type": 3,
|
||||
"api": "csp_Feiyang",
|
||||
"url": "https://yun.urldwz.com/f/NR9qiA/douyuyqk.m3u",
|
||||
"timeout": 10,
|
||||
"url": "./lives/斗鱼一起看.txt",
|
||||
"ua": "okhttp/3.15"
|
||||
},
|
||||
{
|
||||
"name": "YY轮播",
|
||||
"type": 3,
|
||||
"api": "csp_Feiyang",
|
||||
"url": "https://yun.urldwz.com/f/dlkycZ/yylunbo.m3u",
|
||||
"timeout": 10,
|
||||
"url": "./lives/YY轮播.txt",
|
||||
"ua": "okhttp/3.15"
|
||||
},
|
||||
{
|
||||
"name": "B站直播",
|
||||
"type": 3,
|
||||
"api": "csp_Feiyang",
|
||||
"url": "https://yun.urldwz.com/f/9XBkHK/bilibili.m3u",
|
||||
"timeout": 10,
|
||||
"url": "./lives/B站直播.txt",
|
||||
"ua": "okhttp/3.15"
|
||||
},
|
||||
{
|
||||
"name": "电视Live",
|
||||
"type": 0,
|
||||
"url": "https://tv.iill.top/m3u/Gather",
|
||||
"playerType": 2,
|
||||
"timeout": 10
|
||||
"url": "./lives/电视Live.txt"
|
||||
},
|
||||
{
|
||||
"name": "网络Live",
|
||||
"type": 0,
|
||||
"url": "https://tv.iill.top/m3u/Live",
|
||||
"playerType": 2,
|
||||
"timeout": 10
|
||||
"url": "./lives/网络Live.txt"
|
||||
},
|
||||
{
|
||||
"name": "范明明",
|
||||
"type": 0,
|
||||
"url": "https://live.fanmingming.cn/tv/m3u/ipv6.m3u",
|
||||
"timeout": 10
|
||||
"url": "./lives/范明明.txt"
|
||||
},
|
||||
{
|
||||
"name": "APTV",
|
||||
"type": 0,
|
||||
"url": "https://github.3x25.com/https://github.com/Kimentanm/aptv/raw/master/m3u/iptv.m3u",
|
||||
"url": "./lives/APTV.txt",
|
||||
"epg": "http://epg.51zmt.top:8000/api/diyp/?ch={name}&date={date}",
|
||||
"logo": "https://epg.iill.top/logo/{name}.png",
|
||||
"ua": "okhttp/3.15,AptvPlayer/1.4.0",
|
||||
"timeout": 10
|
||||
"ua": "okhttp/3.15,AptvPlayer/1.4.0"
|
||||
}
|
||||
],
|
||||
"hosts": [
|
||||
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Whitespace-only changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,61 +0,0 @@
|
||||
var rule = {
|
||||
title:'88看球',
|
||||
// host:'http://www.88kanqiu.cc',
|
||||
host:'http://www.88kanqiu.bar/',
|
||||
url: "/match/fyclass/live",
|
||||
searchUrl: "",
|
||||
searchable: 0,
|
||||
quickSearch: 0,
|
||||
class_parse: ".nav-pills li;a&&Text;a&&href;/match/(\\d+)/live",
|
||||
headers: {
|
||||
"User-Agent": "PC_UA",
|
||||
},
|
||||
timeout: 5000,
|
||||
play_parse: true,
|
||||
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},
|
||||
lazy: `js:
|
||||
if(/embed=/.test(input)) {
|
||||
let url = input.match(/embed=(.*?)&/)[1];
|
||||
url = base64Decode(url);
|
||||
input = {
|
||||
jx:0,
|
||||
url: url.split('#')[0],
|
||||
parse: 0
|
||||
}
|
||||
} else if (/\?url=/.test(input)){
|
||||
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.replace('play', 'play-url'));
|
||||
let pdata = JSON.parse(html).data;
|
||||
pdata = pdata.slice(6);
|
||||
pdata = pdata.slice(0, -2);
|
||||
pdata = base64Decode(pdata);
|
||||
// log(pdata);
|
||||
let jo = JSON.parse(pdata).links;
|
||||
let d = jo.map(function (it) {
|
||||
return it.name + '$' + urlencode(it.url)
|
||||
});
|
||||
LISTS.push(d)
|
||||
`,
|
||||
},
|
||||
搜索: "",
|
||||
};
|
||||
File renamed without changes.
@@ -0,0 +1 @@
|
||||
bXViYW4u55+t6KeGMi7kuoznuqcuaW1nID0gJy5kZXRhaWwtcGljJiZpbWcmJmRhdGEtc3JjJzsKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIseW8ueW5lScsCiAgICDmqKHmnb86ICfnn63op4YyJywKICAgIGhvc3Q6ICdodHRwczovL2FuaW1lLmdpcmlnaXJpbG92ZS5jb20nLAogICAgaG9tZVVybDogJy9tYXAvJywKICAgIC8vIHVybDonL3Nob3cvZnljbGFzcy0tLS0tLS0tZnlwYWdlLS0tLycKICAgIHVybDogJy9zaG93L2Z5Y2xhc3NmeWZpbHRlci8nLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAnLXt7ZmwuYXJlYX19LXt7ZmwuYnl9fS17e2ZsLmNsYXNzfX0te3tmbC5sYW5nfX0te3tmbC5sZXR0ZXJ9fS0tLWZ5cGFnZS0tLXt7ZmwueWVhcn19JywKICAgIGZpbHRlcjogewogICAgICAgICIyIjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAi5Zac5YmnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmg4UiLAogICAgICAgICAgICAgICAgInYiOiAi54ix5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAi5oGQ5oCWIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjkvZwiLAogICAgICAgICAgICAgICAgInYiOiAi5Yqo5L2cIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAi56eR5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAi5Ymn5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjkuokiLAogICAgICAgICAgICAgICAgInYiOiAi5oiY5LqJIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpYflubsiLAogICAgICAgICAgICAgICAgInYiOiAi5aWH5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAi5YaS6ZmpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAi5oKs55aRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iLAogICAgICAgICAgICAgICAgInYiOiAi5qCh5ZutIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlkI7lrqsiLAogICAgICAgICAgICAgICAgInYiOiAi5ZCO5a6rIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAi54Ot6KGAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLov5DliqgiLAogICAgICAgICAgICAgICAgInYiOiAi6L+Q5YqoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnmb7lkIgiLAogICAgICAgICAgICAgICAgInYiOiAi55m+5ZCIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuZnlpbMiLAogICAgICAgICAgICAgICAgInYiOiAi5LmZ5aWzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnLrnlLIiLAogICAgICAgICAgICAgICAgInYiOiAi5py655SyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XluLgiLAogICAgICAgICAgICAgICAgInYiOiAi5pel5bi4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprZTms5XlsJHlpbMiLAogICAgICAgICAgICAgICAgInYiOiAi6a2U5rOV5bCR5aWzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlvILkuJbnlYwiLAogICAgICAgICAgICAgICAgInYiOiAi5byC5LiW55WMIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmipbpnLIiLAogICAgICAgICAgICAgICAgInYiOiAi54ix5oqW6ZyyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn7PkuZAiLAogICAgICAgICAgICAgICAgInYiOiAi6Z+z5LmQIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLokIwiLAogICAgICAgICAgICAgICAgInYiOiAi6JCMIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4gOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICLkuIDmnIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbm+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICLlm5vmnIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4g+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICLkuIPmnIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWNgeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICLljYHmnIgiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICALine truncated
|
||||
File renamed without changes.
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+Wlh+ePjeW8guWFvVvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5pcWl5aS5jb20nLAogICAgaG9tZVVybDogJycsCiAgICAvLyBkZXRhaWxVcmw6J2h0dHBzOi8vcGN3LWFwaS5pcWl5aS5jb20vYWxidW1zL2FsYnVtL2F2bGlzdGluZm8/YWlkPWZ5aWQmc2l6ZT0yMDAwJnBhZ2U9MScsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL3Bjdy1hcGkuaXFpeWkuY29tL3ZpZGVvL3ZpZGVvL3ZpZGVvaW5mb3dpdGh1c2VyL2Z5aWQ/YWdlbnRfdHlwZT0xJmF1dGhjb29raWU9JnN1YmtleT1meWlkJnN1YnNjcmliZT0xJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vc2VhcmNoLnZpZGVvLmlxaXlpLmNvbS9vP2lmPWh0bWw1JmtleT0qKiZwYWdlTnVtPWZ5cGFnZSZwb3M9MSZwYWdlU2l6ZT0yNCZzaXRlPWlxaXlpJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBtdWx0aTogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBmaWx0ZXI6IHsKICAgICAgICAnMSc6IFt7CiAgICAgICAgICAgICdrZXknOiAnbW9kZScsCiAgICAgICAgICAgICduYW1lJzogJ+e7vOWQiOaOkuW6jycsCiAgICAgICAgICAgICd2YWx1ZSc6IFt7CiAgICAgICAgICAgICAgICAnbic6ICflhajpg6gnLAogICAgICAgICAgICAgICAgJ3YnOiAnJwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfng63mkq3mppwnLAogICAgICAgICAgICAgICAgJ3YnOiAxMQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICflpb3or4TmppwnLAogICAgICAgICAgICAgICAgJ3YnOiA4CiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICduJzogJ+aWsOS4iue6vycsCiAgICAgICAgICAgICAgICAndic6IDQKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICdrZXknOiAneWVhcicsCiAgICAgICAgICAgICduYW1lJzogJ+WFqOmDqOW5tOS7vScsCiAgICAgICAgICAgICd2YWx1ZSc6IFt7CiAgICAgICAgICAgICAgICAnbic6ICflhajpg6gnLAogICAgICAgICAgICAgICAgJ3YnOiAnJwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogMjAyNQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogMjAyNAogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDIzJywKICAgICAgICAgICAgICAgICd2JzogMjAyMwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDIyJywKICAgICAgICAgICAgICAgICd2JzogMjAyMgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDIxJywKICAgICAgICAgICAgICAgICd2JzogMjAyMQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDIwJywKICAgICAgICAgICAgICAgICd2JzogMjAyMAogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDE5JywKICAgICAgICAgICAgICAgICd2JzogMjAxOQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDE4JywKICAgICAgICAgICAgICAgICd2JzogMjAxOAogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDE3JywKICAgICAgICAgICAgICAgICd2JzogMjAxNwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDE2LTIwMTEnLAogICAgICAgICAgICAgICAgJ3YnOiAnMjAxMV8yMDE2JwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICcyMDEwLTIwMDAnLAogICAgICAgICAgICAgICAgJ3YnOiAnMjAwMF8yMDEwJwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICc5MOW5tOS7oycsCiAgICAgICAgICAgICAgICAndic6ICcxOTkwXzE5OTknCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICduJzogJzgw5bm05LujJywKICAgICAgICAgICAgICAgICd2JzogJzE5ODBfMTk4OScKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn5pu05pepJywKICAgICAgICAgICAgICAgICd2JzogJzE5NjRfMTk3OScKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICdrZXknOiAnaXNfcHVyY2hhc2UnLAogICAgICAgICAgICAnbmFtZSc6ICflhajpg6jotYTotLknLAogICAgICAgICAgICAndmFsdWUnOiBbewogICAgICAgICAgICAgICAgJ24nOiAn5YWo6YOoJywKICAgICAgICAgICAgICAgICd2JzogJycKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn5YWN6LS5JywKICAgICAgICAgICAgICAgICd2JzogMAogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfkvJrlkZgnLAogICAgICAgICAgICAgICAgJ3YnOiAxCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICduJzogJ+S7mOi0uScsCiAgICAgICAgICAgICAgICAndic6IDIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICdrZXknOiAndGhyZWVfY2F0ZWdvcnlfaWQnLAogICAgICAgICAgICAnbmFtZSc6ICflnLDljLonLAogICAgICAgICAgICAndmFsdWUnOiBbewogICAgICAgICAgICAgICAgJ24nOiAn5YWo6YOoJywKICAgICAgICAgICAgICAgICd2JzogJycKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn5Y2O6K+tJywKICAgICAgICAgICAgICAgICd2JzogMQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfpppnmuK/lnLDljLonLAogICAgICAgICAgICAgICAgJ3YnOiAyODk5NwogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfnvo7lm70nLAogICAgICAgICAgICAgICAgJ3YnOiAyCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICduJzogJ+asp+a0sicsCiAgICAgICAgICAgICAgICAndic6IDMKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn6Z+p5Zu9JywKICAgICAgICAgICAgICAgICd2JzogNAogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfml6XmnKwnLAogICAgICAgICAgICAgICAgJ3YnOiAzMDgKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn5rOw5Zu9JywKICAgICAgICAgICAgICAgICd2JzogMTExNQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfljbDluqYnLAogICAgICAgICAgICAgICAgJ3YnOiAyODk5OQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICflhbblroMnLAogICAgICAgICAgICAgICAgJ3YnOiA1CiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAna2V5JzogJzE4MDAxJywKICAgICAgICAgICAgJ25hbWUnOiAn57G75Z6LJywKICAgICAgICAgICAgJ3ZhbHVlJzogW3sKICAgICAgICAgICAgICAgICduJzogJ+WFqOmDqCcsCiAgICAgICAgICAgICAgICAndic6ICcnCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICduJzogJ+WWnOWJpycsCiAgICAgICAgICAgICAgICAndic6IDgKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgJ24nOiAn54ix5oOFJywKICAgICAgICAgICAgICAgICd2JzogNgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAnbic6ICfliqjkvZwnLAogICAgICAgICAgICAgICAgJ3YnOiAxMQogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICALine truncated
|
||||
File renamed without changes.
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvumFt+efreWJpycsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkua3VsZXUuY29tLycsCiAgICBob3N0SnM6ICcnLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01vemlsbGEvNS4wIChMaW51eDsgQW5kcm9pZCAxMTsgUGl4ZWwgNSkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkwLjAuNDQzMC45MSBNb2JpbGUgU2FmYXJpLzUzNy4zNicsCiAgICB9LAogICAg57yW56CBOiAndXRmLTgnLAogICAgdGltZW91dDogNTAwMCwKICAgIHVybDogJ2h0dHBzOi8vYXBpLmt1bGV1LmNvbS9meWNsYXNzJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vYXBpLmt1bGV1LmNvbS9hcGkvYmRkaj90ZXh0PSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAn5LuK5pel5pu05pawJueZvuW6puefreWJpybmr4/ml6Xmm7TmlrAm5aS45YWL55+t5YmnJuavj+aXpeabtOaWsCcsCiAgICBjbGFzc191cmw6ICdhcGkveWluZ3NoaSZhcGkvYmRkaj9saXN0JmFwaS9iZGRqP3RvZGF5JmFwaS9hY3Rpb24/bGlzdCZhcGkvYWN0aW9uP3RvZGF5JywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvLyDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgIGxldCBjaWQgPSBNWV9DQVRFIHx8ICcxMDgnOwogICAgbGV0IHBnID0gTVlfUEFHRSB8fCAxOwogICAgbGV0IHVybCA9IGBodHRwczovL2FwaS5rdWxldS5jb20vJHtjaWR9YDsKICAgIGxldCBraHRtbCA9IGZldGNoKHVybCwge2hlYWRlcnM6IHJ1bGUuaGVhZGVyc30pOwogICAgbGV0IGtqc29uID0gSlNPTi5wYXJzZShraHRtbCk7CiAgICBWT0RTID0gW107CiAgICBranNvbi5kYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgIFZPRFMucHVzaCh7CiAgICAgICAgICAgIHZvZF9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICB2b2RfcGljOiBgaHR0cHM6Ly90c2UzLW1tLmNuLmJpbmcubmV0L3RoL2lkL09JUC1DLnJsUU9ZdHNyaXdXS0h3b2ZHdWZKX0FIYVFkP3c9MTU3Jmg9MzUwJmM9NyZyPTAmbz03JmRwcj0zLjcmcGlkPTEuNyZybT0zYCwKICAgICAgICAgICAgdm9kX3JlbWFya3M6IGl0LmFkZHRpbWUsCiAgICAgICAgICAgIHZvZF9pZDogYHB1c2g6Ly8ke2l0LnZpZXdsaW5rfWAKICAgICAgICB9KTsKICAgIH0pOwp9KSwKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiRqcy50b1N0cmluZygoKSA9PiB7CiAgICBsZXQgdXJsID0gYGh0dHBzOi8vYXBpLmt1bGV1LmNvbS9hcGkvYmRkaj90ZXh0PSR7S0VZfWA7CiAgICBsZXQga2h0bWwgPSBmZXRjaCh1cmwpOwogICAgbGV0IGtqc29uID0gSlNPTi5wYXJzZShraHRtbCk7CiAgICBWT0RTID0gW107CiAgICBranNvbi5kYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgIFZPRFMucHVzaCh7CiAgICAgICAgICAgIHZvZF9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICB2b2RfcGljOiBpdC5wUGljLAogICAgICAgICAgICB2b2RfcmVtYXJrczogaXQuYWRkdGltZSwKICAgICAgICAgICAgdm9kX2lkOiBgcHVzaDovLyR7aXQudmlld2xpbmt9YAogICAgICAgIH0pCiAgICB9KQp9KSwKICAgIGNhdGVfZXhjbHVkZTogJ+mmlumhtXznlZnoqIB8QVBQfOS4i+i9vXzotYTorq985paw6Ze7fOWKqOaAgScsCiAgICB0YWJfZXhjbHVkZTogJ+eMnOS9oHzllpzmrKJ85LiL6L29fOWJp+aDhXzmppx86K+E6K66JywKICAgIOexu+WeizogJ+W9seinhicsCiAgICBob21lVXJsOiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
Z2xvYmFsVGhpcy5nZXRSYW5kb21JdGVtID0gZnVuY3Rpb24gKGl0ZW1zKSB7CiAgICByZXR1cm4gaXRlbXNbTWF0aC5yYW5kb20oKSAqIGl0ZW1zLmxlbmd0aCB8IDBdOwp9CnZhciBydWxlID0gewogICAgdGl0bGU6ICfph4fpm4bkuYvnjotb5ZCIXScsCiAgICBhdXRob3I6ICfpgZPplb8nLAogICAgdmVyc2lvbjogJzIwMjQwNzA2IGJldGExNycsCiAgICB1cGRhdGVfaW5mbzogYGAudHJpbSgpLAogICAgaG9zdDogJycsCiAgICBob21lVGlkOiAnJywKICAgIGhvbWVVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJnQ9e3tydWxlLmhvbWVUaWR9fScsCiAgICBkZXRhaWxVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJmlkcz1meWlkJywKICAgIHNlYXJjaFVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz93ZD0qKiZwZz0jVHJ1ZVBhZ2UjI3BhZ2U9ZnlwYWdlJywKICAgIGNsYXNzVXJsOiAnL2FwaS5waHAvcHJvdmlkZS92b2QvJywKICAgIHVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz9hYz1kZXRhaWwmcGc9ZnlwYWdlJnQ9ZnlmaWx0ZXInLAogICAgZmlsdGVyX3VybDogJ3t7Zmwu57G75Z6LfX0nLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgbGltaXQ6IDIwLAogICAgc2VhcmNoX2xpbWl0OiAxMCwKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgcGFyc2VfdXJsOiAnJywKICAgIHNlYXJjaF9tYXRjaDogZmFsc2UsCiAgICBzZWFyY2hfcGljOiB0cnVlLAogICAg6aKE5aSE55CGOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGZ1bmN0aW9uIGdldENsYXNzZXMoaXRlbSkgewogICAgICAgICAgICBsZXQgY2xhc3NlcyA9IFtdOwogICAgICAgICAgICBpZiAoaXRlbS5jbGFzc19uYW1lICYmIGl0ZW0uY2xhc3NfdXJsKSB7CiAgICAgICAgICAgICAgICBpZiAoIS8mfOeUteW9sXznlLXop4bliad857u86Im6fOWKqOa8q1tcdTRFMDAtXHU5RkE1XSsvLnRlc3QoaXRlbS5jbGFzc19uYW1lKSkgewogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uY2xhc3NfbmFtZSA9IHVuZ3ppcChpdGVtLmNsYXNzX25hbWUpCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICBsb2coYOS4jeivhuWIq+eahGNsYXNzX25hbWXlr7zoh7Rnemlw6Kej56CB5aSx6LSlOiR7ZX1gKQogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2xhc3NlcwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxldCBuYW1lcyA9IGl0ZW0uY2xhc3NfbmFtZS5zcGxpdCgnJicpOwogICAgICAgICAgICAgICAgbGV0IHVybHMgPSBpdGVtLmNsYXNzX3VybC5zcGxpdCgnJicpOwogICAgICAgICAgICAgICAgbGV0IGNudCA9IE1hdGgubWluKG5hbWVzLmxlbmd0aCwgdXJscy5sZW5ndGgpOwogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbnQ7IGkrKykgewogICAgICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICd0eXBlX2lkJzogdXJsc1tpXSwKICAgICAgICAgICAgICAgICAgICAgICAgJ3R5cGVfbmFtZSc6IG5hbWVzW2ldCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGNsYXNzZXMKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZihiYXRjaEZldGNoKSA9PT0gJ2Z1bmN0aW9uJykgewogICAgICAgICAgICBydWxlLnNlYXJjaF9saW1pdCA9IDE2OwogICAgICAgICAgICBsb2coJ+W9k+WJjeeoi+W6j+aUr+aMgeaJuemHj+ivt+axgltiYXRjaEZldGNoXSzmkJzntKLpmZDliLblt7Lorr7nva7kuLoxNicpOwogICAgICAgIH0KICAgICAgICBsZXQgX3VybCA9IHJ1bGUucGFyYW1zOwogICAgICAgIGxvZyhg5Lyg5YWl5Y+C5pWwOiR7X3VybH1gKTsKICAgICAgICBpZiAoX3VybCAmJiB0eXBlb2YoX3VybCkgPT09ICdzdHJpbmcnICYmIC9eKGh0dHB8ZmlsZSkvLnRlc3QoX3VybCkpIHsKICAgICAgICAgICAgaWYgKF91cmwuaW5jbHVkZXMoJyQnKSkgewogICAgICAgICAgICAgICAgbGV0IF91cmxfcGFyYW1zID0gX3VybC5zcGxpdCgnJCcpOwogICAgICAgICAgICAgICAgX3VybCA9IF91cmxfcGFyYW1zWzBdOwogICAgICAgICAgICAgICAgcnVsZS5zZWFyY2hfbWF0Y2ggPSAhIShfdXJsX3BhcmFtc1sxXSk7CiAgICAgICAgICAgICAgICBpZiAoX3VybF9wYXJhbXMubGVuZ3RoID4gMikgewogICAgICAgICAgICAgICAgICAgIHJ1bGUuc2VhcmNoX3BpYyA9ICEhKF91cmxfcGFyYW1zWzJdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoX3VybCk7CiAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICAgICAgbGV0IF9jbGFzc2VzID0gW107CiAgICAgICAgICAgIHJ1bGUuZmlsdGVyID0ge307CiAgICAgICAgICAgIHJ1bGUuZmlsdGVyX2RlZiA9IHt9OwogICAgICAgICAgICBqc29uLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICAgICAgbGV0IF9vYmogPSB7CiAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICAgICAgICAgIHR5cGVfaWQ6IGl0LnVybCwKICAgICAgICAgICAgICAgICAgICBwYXJzZV91cmw6IGl0LnBhcnNlX3VybCB8fCAnJywKICAgICAgICAgICAgICAgICAgICBzZWFyY2hhYmxlOiBpdC5zZWFyY2hhYmxlICE9PSAwLAogICAgICAgICAgICAgICAgICAgIGFwaTogaXQuYXBpIHx8ICcnLAogICAgICAgICAgICAgICAgICAgIGNhdGVfZXhjbHVkZTogaXQuY2F0ZV9leGNsdWRlIHx8ICcnLAogICAgICAgICAgICAgICAgICAgIGNhdGVfZXhjbHVkZXM6IGl0LmNhdGVfZXhjbHVkZXMgfHwgW10sCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgX2NsYXNzZXMucHVzaChfb2JqKTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGpzb24xID0gW107CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LmNsYXNzX25hbWUgJiYgaXQuY2xhc3NfdXJsKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24xID0gZ2V0Q2xhc3NlcyhpdCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAganNvbjEgPSBKU09OLnBhcnNlKHJlcXVlc3QodXJsam9pbihfb2JqLnR5cGVfaWQsIF9vYmouYXBpIHx8IHJ1bGUuY2xhc3NVcmwpKSkuY2xhc3M7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmIChfb2JqLmNhdGVfZXhjbHVkZXMgJiYgQXJyYXkuaXNBcnJheShfb2JqLmNhdGVfZXhjbHVkZXMpICYmIF9vYmouY2F0ZV9leGNsdWRlcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24xID0ganNvbjEuZmlsdGVyKGNsID0+ICFfb2JqLmNhdGVfZXhjbHVkZXMuaW5jbHVkZXMoY2wudHlwZV9uYW1lKSk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChfb2JqLmNhdGVfZXhjbHVkZSkgewogICAgICAgICAgICAgICAgICAgICAgICBqc29uMSA9IGpzb24xLmZpbHRlcihjbCA9PiAhbmVLine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+ein+iwg+W9seinhicsCiAgICBob3N0OiAnaHR0cDovL3d3dy42MTg2NDguY29tJywKICAgIC8vIGhvbWVVcmw6Jy8nLAogICAgdXJsOiAnL2RpZS10aWFvL2Z5Y2xhc3MtZnlwYWdlLmh0bWwnLAogICAgc2VhcmNoVXJsOiAnL2RpZWRpYW9jaC9wYWdlL2Z5cGFnZS93ZC8qKi5odG1sJywKICAgIHNlYXJjaGFibGU6IDIsIC8v5piv5ZCm5ZCv55So5YWo5bGA5pCc57SiLAogICAgcXVpY2tTZWFyY2g6IDAsIC8v5piv5ZCm5ZCv55So5b+r6YCf5pCc57SiLAogICAgZmlsdGVyYWJsZTogMCwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBoZWFkZXJzOiB7IC8v572R56uZ55qE6K+35rGC5aS0LOWujOaVtOaUr+aMgeaJgOacieeahCzluLjluKZ1YeWSjGNvb2tpZXMKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgICAgIC8vICJDb29raWUiOiAic2VhcmNobmVlZD1vayIKICAgIH0sCiAgICAvL2NsYXNzX3BhcnNlOicuc3R1aS1oZWFkZXJfX21lbnUgbGkuaGlkZGVuLXhzO2EmJlRleHQ7YSYmaHJlZjsuKi8oLio/KS5odG1sJywKICAgIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJue7vOiJuibliqjmvKsnLAogICAgY2xhc3NfdXJsOiAnMSYyJjMmNCcsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogOCwKICAgIOaOqOiNkDogJy5zdHVpLXZvZGxpc3QuY2xlYXJmaXg7LnN0dWktdm9kbGlzdF9fYm94O2EmJnRpdGxlO2EmJmRhdGEtb3JpZ2luYWw7LnBpYy10ZXh0JiZUZXh0O2EmJmhyZWYnLAogICAgZG91YmxlOiB0cnVlLCAvLyDmjqjojZDlhoXlrrnmmK/lkKblj4zlsYLlrprkvY0KICAgIOS4gOe6pzogJy5zdHVpLXZvZGxpc3QuY2xlYXJmaXggbGk7YSYmdGl0bGU7YSYmZGF0YS1vcmlnaW5hbDsucGljLXRleHQmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6IHsKICAgICAgICAidGl0bGUiOiAiaDEudGl0bGUmJlRleHQ7LnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoMikmJlRleHQiLAogICAgICAgICJpbWciOiAiLmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsIiwKICAgICAgICAiZGVzYyI6ICIudmlkZW8taW5mby1pdGVtczplcSgtMikmJlRleHQ7LnZpZGVvLWluZm8taXRlbXM6ZXEoLTEpJiZUZXh0Oy52aWRlby1pbmZvLWl0ZW1zOmVxKC0yKSYmVGV4dDsuc3R1aS1jb250ZW50X19kZXRhaWwgcDplcSg3KSYmVGV4dDsuc3R1aS1jb250ZW50X19kZXRhaWwgcDplcSg2KSYmVGV4dCIsCiAgICAgICAgImNvbnRlbnQiOiAiLnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoOSkmJlRleHQiLAogICAgICAgICJ0YWJzIjogIi5uYXYubmF2LXRhYnMgbGkiLAogICAgICAgICJsaXN0cyI6ICIudGFiLXBhbmUuZmFkZTplcSgjaWQpJiZ1bCYmbGkiCiAgICB9LAogICAg5pCc57SiOiAnLnN0dWktdm9kbGlzdC5jbGVhcmZpeCBsaTthJiZ0aXRsZTthJiZkYXRhLW9yaWdpbmFsOy5waWMtdGV4dCYmVGV4dDthJiZocmVmJywKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WKqOeUu+eJh+Wkp+WFqCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuZGhwZHEyLmNvbS8nLAogICAgdXJsOiAnaHR0cHM6Ly93d3cuZGhwZHEyLmNvbS9rYXRvbmcvZnljbGFzcy1meXBhZ2UvJywKICAgIHNlYXJjaFVybDogJy92b2RzZWFyY2gvKiotLS0tLS0tLS0tZnlwYWdlLS0tLycsCiAgICBjbGFzc19wYXJzZTogJy5jX2NsYXNzIGxpO2EmJlRleHQ7YSYmaHJlZjsuKi8oLio/KS8nLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgfSwKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAnJywKICAgIGxpbWl0OiA2LAogICAg5o6o6I2QOiAnLnN0dWktdm9kbGlzdDtsaTthJiZ0aXRsZTthJiZkYXRhLW9yaWdpbmFsOy5waWMtdGV4dCYmVGV4dDthJiZocmVmJywKICAgIGRvdWJsZTogdHJ1ZSwKICAgIOS4gOe6pzogJy5zdHVpLXZvZGxpc3QgbGk7YSYmdGl0bGU7YSYmZGF0YS1vcmlnaW5hbDsucGljLXRleHQmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6IHsKICAgICAgICB0aXRsZTogJ2gxJiZUZXh0Oy5kZXRhaWxfbGlzdCYmdWw6ZXEoMSkmJmxpJiZhOmVxKDIpJiZUZXh0JywKICAgICAgICBpbWc6ICcudm9kbGlzdF90aHVtYiYmZGF0YS1vcmlnaW5hbCcsCiAgICAgICAgZGVzYzogJy5wbGF5aW5mbyYmcDplcSgwKSYmVGV4dDsucGxheWluZm8mJnA6ZXEoMSkmJlRleHQ7LnBsYXlpbmZvJiZwOmVxKDIpJiZUZXh0Oy5wbGF5aW5mbyYmcDplcSgzKSYmVGV4dCcsCiAgICAgICAgY29udGVudDogJy5jb250ZW50OmVxKDEpJywKICAgICAgICB0YWJzOiAnLnJlbGF0ZXNkaCAudGl0bGUgaDMnLAogICAgICAgIGxpc3RzOiAnLnJlbGF0ZXNkaDplcSgjaWQpIGxpJywKICAgIH0sCiAgICDmkJzntKI6ICcqJywKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLCAvL+W9seinhnzlkKzkuaZ85ryr55S7fOWwj+ivtAogICAgdGl0bGU6ICfnn63liacnLAogICAgaG9zdDogJ2h0dHBzOi8vYWktaW1nLnljdWJicy5jbi8nLAogICAgaG9tZVVybDogJy9hcGkvZHVhbmp1L2xpc3QnLAogICAgdXJsOiAnL2FwaS9kdWFuanUvbGlzdCcsCiAgICBzZWFyY2hVcmw6ICdodHRwczovL2FwaS5rdWxldS5jb20vYXBpL2FjdGlvbj90ZXh0PSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDAsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJywKICAgIH0sCiAgICBoaWtlckxpc3RDb2w6ICJ0ZXh0XzEiLAogICAgaGlrZXJDbGFzc0xpc3RDb2w6ICJ0ZXh0XzEiLAogICAgdGltZW91dDogNTAwMCwKICAgIGNsYXNzX25hbWU6ICcnLAogICAgY2xhc3NfdXJsOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGlucHV0ID0gInB1c2g6Ly8iICsgaW5wdXQ7CiAgICB9KSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzb246ZGF0YTtuYW1lOzs7dXJsJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnanNvbjpkYXRhO25hbWU7Ozt2aWV3bGluaycsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLCAvL+W9seinhnzlkKzkuaZ85ryr55S7fOWwj+ivtAogICAgdGl0bGU6ICfniLHnnIvnn63liadb55uYXScsCiAgICBob3N0OiAnaHR0cHM6Ly95cy4xMTB0LmNuLycsCiAgICBob21lVXJsOiAnL2FwaS9hamF4LnBocD9hY3Q9cmVjb21tZW5kJywKICAgIGhvbWVVcmw6ICcvYXBpL2FqYXgucGhwP2FjdD1EYWlseScsCiAgICB1cmw6ICcvYXBpL2FqYXgucGhwP2FjdD1meWNsYXNzJywKICAgIHNlYXJjaFVybDogJy9hcGkvYWpheC5waHA/YWN0PXNlYXJjaCZuYW1lPSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDAsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJywKICAgIH0sCiAgICBoaWtlckxpc3RDb2w6ICJ0ZXh0XzEiLAogICAgaGlrZXJDbGFzc0xpc3RDb2w6ICJ0ZXh0XzEiLAogICAgdGltZW91dDogNTAwMCwKICAgIGNsYXNzX25hbWU6ICflhajpg6gnLAogICAgY2xhc3NfdXJsOiAneWluZ3NoaWxpc3QnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgaW5wdXQgPSAicHVzaDovLyIgKyBpbnB1dDsKICAgIH0pLAogICAgZG91YmxlOiBmYWxzZSwKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnanNvbjpkYXRhO25hbWU7O2FkZHRpbWU7dXJsJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnKicsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WKqOa8q+WymycsCiAgICAvLyBob3N0OidodHRwOi8vd3d3LmRtZDg1LmNvbScsCiAgICAvLyBob3N0OidodHRwOi8vd3d3Ljg4ZG13LmNvbScsCiAgICBob3N0OiAnaHR0cDovL3d3dy5kbWFuZDUuY29tJywKICAgIC8vIHVybDonL3ZvZC1saXN0LWlkLWZ5Y2xhc3MtcGctZnlwYWdlLW9yZGVyLS1ieS17Ynl9LWNsYXNzLXtjbGFzc30teWVhci17eWVhcn0tbGV0dGVyLS1hcmVhLS1sYW5nLS5odG1sJywKICAgIHVybDogJy92b2QtbGlzdC1pZC1meWNsYXNzLXBnLWZ5cGFnZS1vcmRlci1meWZpbHRlci1hcmVhLS1sYW5nLS5odG1sJywKICAgIGZpbHRlcmFibGU6IDEsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgZmlsdGVyX3VybDogJy1ieS17e2ZsLmJ5fX0tY2xhc3Mte3tmbC5jbGFzc319LXllYXIte3tmbC55ZWFyfX0tbGV0dGVyLXt7ZmwubGV0dGVyfX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Ymn5oOFIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZCO5a6rIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpnZLmmKUiLAogICAgICAgICAgICAgICAgInYiOiAiOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55m+5ZCIIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5o6o55CGIiwKICAgICAgICAgICAgICAgICJ2IjogIjEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprZTms5UiLAogICAgICAgICAgICAgICAgInYiOiAiMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuelnumtlCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rK75oSIIiwKICAgICAgICAgICAgICAgICJ2IjogIjEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnq57mioAiLAogICAgICAgICAgICAgICAgInYiOiAiNTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICI2MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIjYyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLokJ3ojokiLAogICAgICAgICAgICAgICAgInYiOiAiNjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumtlOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICI2NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5paXIiwKICAgICAgICAgICAgICAgICJ2IjogIjY1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrYzoiJ4iLAogICAgICAgICAgICAgICAgInYiOiAiOTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICI5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqx5b+XIiwKICAgICAgICAgICAgICAgICJ2IjogIjEwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YG25YOPIiwKICAgICAgICAgICAgICAgICJ2IjogIjExOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6IGM5Zy6IiwKICAgICAgICAgICAgICAgICJ2IjogIjEyMSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7vSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDELine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+Wlveeci+WKqOa8qycsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cueW91aml1bGEuY29tLycsCiAgICB1cmw6ICdodHRwczovL3d3dy55b3VqaXVsYS5jb20veW91aml1L2Z5Y2xhc3MtZnlwYWdlLmh0bWwnLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly93d3cueW91aml1bGEuY29tL3NlYXJjaC5waHA/cGFnZT1meXBhZ2Umc2VhcmNod29yZD0qKiZzZWFyY2h0eXBlPScsCiAgICBzZWFyY2hhYmxlOiAyLCAvL+aYr+WQpuWQr+eUqOWFqOWxgOaQnOe0oiwKICAgIHF1aWNrU2VhcmNoOiAwLCAvL+aYr+WQpuWQr+eUqOW/q+mAn+aQnOe0oiwKICAgIGZpbHRlcmFibGU6IDAsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ1VDX1VBJywgLy8gIkNvb2tpZSI6ICIiCiAgICB9LCAvLyBjbGFzc19wYXJzZTonLnN0dWktaGVhZGVyX19tZW51IGxpOmd0KDApOmx0KDcpO2EmJlRleHQ7YSYmaHJlZjsvKFxcZCspLmh0bWwnLAogICAgY2xhc3NfcGFyc2U6ICcuc3R1aS1oZWFkZXJfX21lbnUgbGk6Z3QoMCk6bHQoNyk7YSYmVGV4dDthJiZocmVmOy4qLyguKj8pLmh0bWwnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6ICd1bC5zdHVpLXZvZGxpc3QuY2xlYXJmaXg7bGk7YSYmdGl0bGU7Lmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsOy5waWMtdGV4dCYmVGV4dDthJiZocmVmJywKICAgIGRvdWJsZTogdHJ1ZSwgLy8g5o6o6I2Q5YaF5a655piv5ZCm5Y+M5bGC5a6a5L2NCiAgICDkuIDnuqc6ICcuc3R1aS12b2RsaXN0IGxpO2EmJnRpdGxlO2EmJmRhdGEtb3JpZ2luYWw7LnBpYy10ZXh0JiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgInRpdGxlIjogIi5zdHVpLWNvbnRlbnRfX2RldGFpbCAudGl0bGUmJlRleHQ7LnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoLTIpJiZUZXh0IiwKICAgICAgICAiaW1nIjogIi5zdHVpLWNvbnRlbnRfX3RodW1iIC5sYXp5bG9hZCYmZGF0YS1vcmlnaW5hbCIsCiAgICAgICAgImRlc2MiOiAiLnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoMCkmJlRleHQ7LnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoMSkmJlRleHQ7LnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoMikmJlRleHQiLAogICAgICAgICJjb250ZW50IjogIiNkZXNjJiZUZXh0IiwKICAgICAgICAidGFicyI6ICIuc3R1aS1wYW5uZWwtYm94IGgzIiwKICAgICAgICAibGlzdHMiOiAiLnN0dWktY29udGVudF9fcGxheWxpc3Q6ZXEoI2lkKSBsaSIKICAgIH0sCiAgICDmkJzntKI6ICd1bC5zdHVpLXZvZGxpc3QmJmxpO2EmJnRpdGxlOy5sYXp5bG9hZCYmZGF0YS1vcmlnaW5hbDsudGV4dC1tdXRlZCYmVGV4dDthJiZocmVmOy50ZXh0LW11dGVkOmVxKC0xKSYmVGV4dCcsCgp9
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+iKseWtkOWKqOa8q1vmvKtdJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5odWF6aWRtLmNvbScsCiAgICBjbGFzc19uYW1lOiAnVFbliqjmvKsm5Ymn5Zy6JueJueaRhCcsCiAgICBjbGFzc191cmw6ICcxJjImMycsCiAgICBzZWFyY2hVcmw6ICcvaW5kZXgucGhwL2FqYXgvc3VnZ2VzdD9taWQ9MSZ3ZD0qKiZsaW1pdD01MCcsCiAgICBzZWFyY2hVcmw6ICcvdm9kc2VhcmNoLyoqLS0tLS0tLS0tLWZ5cGFnZS0tLS5odG1sJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgfSwKICAgIHVybDogJy9pbmRleC5waHAvYXBpL3ZvZCN0eXBlPWZ5Y2xhc3NmeWZpbHRlciZwYWdlPWZ5cGFnZScsCiAgICBmaWx0ZXJhYmxlOiAwLAogICAgZmlsdGVyX3VybDogJyZjbGFzcz17e2ZsLmNsYXNzfX0meWVhcj17e2ZsLnllYXJ9fSZsZXR0ZXI9e3tmbC5sZXR0ZXJ9fSZieT17e2ZsLmJ5fX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW8guS4lueVjCIsCiAgICAgICAgICAgICAgICAidiI6ICLlvILkuJbnlYwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueZvuWQiCIsCiAgICAgICAgICAgICAgICAidiI6ICLnmb7lkIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWQjuWuqyIsCiAgICAgICAgICAgICAgICAidiI6ICLlkI7lrqsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueDreihgCIsCiAgICAgICAgICAgICAgICAidiI6ICLng63ooYAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue6r+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICLnuq/niLEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuepv+i2iiIsCiAgICAgICAgICAgICAgICAidiI6ICLnqb/otooiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLlpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOaWlyIsCiAgICAgICAgICAgICAgICAidiI6ICLmiJjmlpciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWQjuWuqyIsCiAgICAgICAgICAgICAgICAidiI6ICLlkI7lrqsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICLmkJ7nrJEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeW4uCIsCiAgICAgICAgICAgICAgICAidiI6ICLml6XluLgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLnp5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuayu+aEiCIsCiAgICAgICAgICAgICAgICAidiI6ICLmsrvmhIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuagoeWbrSIsCiAgICAgICAgICAgICAgICAidiI6ICLmoKHlm60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgYvniLEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICLlhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaOqOeQhiIsCiAgICAgICAgICAgICAgICAidiI6ICLmjqjnkIYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacuuaImCIsCiAgICAgICAgICAgICAgICAidiI6ICLmnLrmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfs+S5kCIsCiAgICAgICAgICAgICAgICAidiI6ICLpn7PkuZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiQneiOiSIsCiAgICAgICAgICAgICAgICAidiI6ICLokJ3ojokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIsCiAgICAgICAgICAgICAgICAidiI6ICLmgZDmgJYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDiuaCmiIsCiAgICAgICAgICAgICAgICAidiI6ICLmg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazoemdoueVqiIsCiAgICAgICAgICAgICAgICAidiI6ICLms6HpnaLnlaoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua4uOaIj+aUuSIsCiAgICAgICAgICAgICAgICAidiI6ICLmuLjmiI/mlLkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWwj+ivtOaUuSIsCiAgICAgICAgICAgICAgICAidiI6ICLlsI/or7TmlLkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua8q+eUu+aUuSIsCiAgICAgICAgICAgICAgICAidiI6ICLmvKvnlLvmlLkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiFkCIsCiAgICAgICAgICAgICAgICAidiI6ICLohZAiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICBLine truncated
|
||||
@@ -0,0 +1 @@
|
||||
T2JqZWN0LmFzc2lnbihtdWJhbi5teHByby7kuoznuqcsIHsKICAgIHRhYl90ZXh0OiAnZGl2LS1zbWFsbCYmVGV4dCcsCn0pOwp2YXIgcnVsZSA9IHsKICAgIOaooeadvzogJ214cHJvJywKICAgIHRpdGxlOiAn5Ymn5ZyI5ZyIJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5qcXF6eC5jYy8nLAogICAgdXJsOiAnL3ZvZHNob3cvaWQvZnljbGFzcy9wYWdlL2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy92b2RzZWFyY2gqKi9wYWdlL2Z5cGFnZS5odG1sJywKICAgIGNsYXNzX3BhcnNlOiAnLm5hdmJhci1pdGVtcyBsaTpndCgyKTpsdCg4KTthJiZUZXh0O2EmJmhyZWY7LiovKC4qPylcLmh0bWwnLAogICAgY2F0ZV9leGNsdWRlOiAn5LuK5pel5pu05pawfOeDreamnCcsCn0=
|
||||
File renamed without changes.
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eci+S6huS5iCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cua3Nrc2wuY29tJywKICAgIC8vIHVybDonL3Nob3cvZnljbGFzcy9wYWdlL2Z5cGFnZS5odG1sJywKICAgIHVybDogJy9zaG93L2Z5Y2xhc3NmeWZpbHRlci5odG1sJywKICAgIGZpbHRlcmFibGU6IDEsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgZmlsdGVyX3VybDogJ3t7ZmwuYXJlYX19e3tmbC5ieSBvciAiL2J5L3RpbWUifX17e2ZsLmNsYXNzfX0vcGFnZS9meXBhZ2V7e2ZsLnllYXJ9fScsCiAgICBmaWx0ZXI6IHsKICAgICAgICAiZHkiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+mfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+iLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOV5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+azleWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/llpzliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54ix5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/liqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56eR5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K2m5YyqIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/orabljKoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueKr+e9qiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54qv572qIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WKqOeUuyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuatpuS+oCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5q2m5L6gIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5p6q5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mnqrmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oGQ5oCWIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oOK5oKaIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue7j+WFuCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv57uP5YW4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpnZLmmKUiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+mdkuaYpSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paH6Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mlofoiboiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPpOijhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Y+k6KOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGnOadkSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Yac5p2RIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICALine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogIui3r+a8q+a8qyIsCiAgICBob3N0OiAiaHR0cDovL3d3dy5sbW0zNi5jb20iLAogICAgdXJsOiAiL3ZvZC9zaG93L2lkL2Z5Y2xhc3NmeWZpbHRlci5odG1sIiwKICAgIHNlYXJjaFVybDogJy92b2Qvc2VhcmNoL3BhZ2UvZnlwYWdlL3dkLyoqLmh0bWwnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcjogewogICAgICAgICIzIjogW3sKICAgICAgICAgICAgImtleSI6ICLlubTku6MiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuabtOaXqSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE0LTE5ODAiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIuaOkuW6jyIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDov5Hmm7TmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOmrmOS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA6auY6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5aSa54K56LWeIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS91cCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiNCI6IFt7CiAgICAgICAgICAgICJrZXkiOiAi5bm05LujIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmm7Tml6kiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNC0xOTgwIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICLmjpLluo8iLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA6L+R5pu05pawIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS90aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDpq5jkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L2hpdHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOmrmOivhOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvc2NvcmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOWkmueCuei1niIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvdXAiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjUiOiBbewogICAgICAgICAgICAia2V5IjogIuW5tOS7oyIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICALine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+aHkuebmOaQnCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAgaG9zdEpzOiAnJywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNb3ppbGxhLzUuMCAoTGludXg7IEFuZHJvaWQgMTE7IFBpeGVsIDUpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85MC4wLjQ0MzAuOTEgTW9iaWxlIFNhZmFyaS81MzcuMzYnLAogICAgfSwKICAgIOe8lueggTogJ3V0Zi04JywKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICB1cmw6ICdodHRwczovL3d3dy5senBhbnguY29tL3NlYXJjaD9xPWZ5Y2xhc3MmZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vd3d3Lmx6cGFueC5jb20vc2VhcmNoP3E9KiomZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAn5Ymn6ZuGJueUteW9sSbnn63liacm5Yqo5ryrJue7vOiJuicsCiAgICBjbGFzc191cmw6ICfliafpm4Ym55S15b2xJuefree9keWJpybliqjmvKsm57u86Im6JywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvLyDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICJib2R5JiYuc2VtaS1zcGFjZS1tZWRpdW0tdmVydGljYWwiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgbGV0IHJlbWFya3MgPSBwZGZoKHgsICJkaXYmJmltZyYmYWx0Iik7XG4gICAgICAgICAgICAvLyDov4fmu6TmjonljIXlkKsi6L+F6Zu35LqR55uYIueahOWGheWuuVxuICAgICAgICAgICAgaWYocmVtYXJrcy5pbmNsdWRlcygi6L+F6Zu35LqR55uYIikpIHJldHVybiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiZGl2JiZhJiZ0aXRsZSIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly93dzEuc2luYWltZy5jbi9tdzY5MC8wMDZmYU1uZGx5MWh0bWIxbTA4YWRqMzBlMjBlMnEzbS5qcGdcJyxcbiAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfY29udGVudDogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImRpdiYmYSYmaHJlZiIpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmZpbHRlcih4ID0+IHggIT09IG51bGwpO1xuICAgICcsCiAgICDkuoznuqc6IHsKICAgICAgICB0aXRsZTogJ2gxJiZUZXh0JywKICAgICAgICBpbWc6ICdpbWcmJnNyYycsCiAgICAgICAgZGVzYzogJy5jYXJkLXRleHQ6ZXEoMikmJlRleHQ7Ozs7JywKICAgICAgICBjb250ZW50OiAnYm9keSYmLnNlbWktc3BhY2UtbG9vc2UtdmVydGljYWwmJmEmJmhyZWYnLAogICAgICAgIHRhYnM6ICJqczpUQUJTID0gWyfmh5Lnm5gnXSIsCiAgICAgICAgbGlzdHM6ICJqczpcbiAgICAgICAgICAgIExJU1RTID0gW107XG4gICAgICAgICAgICBsZXQgbGlzdHMxID0gcGRmYShodG1sLCAnYm9keSYmLnNlbWktc3BhY2UtbG9vc2UtdmVydGljYWwnKS5tYXAoaXQgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBfdHQgPSBwZGZoKGl0LCAnc3BhbiYmdGl0bGUnKTtcbiAgICAgICAgICAgICAgICBsZXQgX3V1ID0gcGRmaChpdCwgJ2EmJmhyZWYnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gX3R0ICsgJyQnICsgX3V1O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBMSVNUUy5wdXNoKGxpc3RzMSk7XG4gICAgICAgICIsCiAgICB9LAogICAg5pCc57SiOiAnanM6XG4gICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQpO1xuICAgICAgICBsZXQgbGlzdCA9IHBkZmEoaHRtbCwgImJvZHkmJi5zZW1pLXNwYWNlLW1lZGl1bS12ZXJ0aWNhbCIpO1xuICAgICAgICBWT0RTID0gbGlzdC5tYXAoeCA9PiB7XG4gICAgICAgICAgICBsZXQgcmVtYXJrcyA9IHBkZmgoeCwgImRpdiYmaW1nJiZhbHQiKTtcbiAgICAgICAgICAgIC8vIOi/h+a7pOaOieWMheWQqyLov4Xpm7fkupHnm5gi55qE5YaF5a65XG4gICAgICAgICAgICBpZihyZW1hcmtzLmluY2x1ZGVzKCLov4Xpm7fkupHnm5giKSkgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBwZGZoKHgsICJkaXYmJmEmJnRpdGxlIiksXG4gICAgICAgICAgICAgICAgdm9kX3BpYzogXCdodHRwczovL3d3MS5zaW5haW1nLmNuL213NjkwLzAwNmZhTW5kbHkxaHRtYjFtMDhhZGozMGUyMGUycTNtLmpwZ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9pZDogcGRmaCh4LCAiZGl2JiZhJiZocmVmIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkuZmlsdGVyKHggPT4geCAhPT0gbnVsbCk7XG4gICAgJywKICAgIGNhdGVfZXhjbHVkZTogJ+mmlumhtXznlZnoqIB8QVBQfOS4i+i9vXzotYTorq985paw6Ze7fOWKqOaAgScsCiAgICB0YWJfZXhjbHVkZTogJ+eMnOS9oHzllpzmrKJ85LiL6L29fOWJp+aDhXzmppx86K+E6K66JywKICAgIOexu+WeizogJ+W9seinhicsCiAgICBob21lVXJsOiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvuW/meaXoOaenFvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3BpYW5rdS5hcGkuJTZkJTY3JTc0JTc2LmNvbScsCiAgICBob21lVXJsOiAnJywKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnouJTZkJTY3JTc0JTc2LmNvbS9wYy9zZWFyY2gvdjE/cT0qKiZwbj1meXBhZ2UmcGM9MTAnLAogICAgLy8g5paw54mI5o6l5Y+j5pCc57Si5Y+Y5oiQdjLlubbkuJTliqDkuobpqozor4HvvIzom4vnlrwKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnoubWd0di5jb20vcGMvc2VhcmNoL3YyP2FsbG93ZWRSQz0xJnNyYz1tZ3R2JmRpZD1jZjAzYjk1OS02OTQ1LTRjYjYtYmNiMy04ODc2MjQ1OTM1NGQmdGltZXN0YW1wPTIwMjQtMDYtMjFUMTUlM0E1MiUzQTU1WiZzaWduVmVyc2lvbj0xJnNpZ25Ob25jZT04ZGFlNjdhMWZhZmM0YmRhOTg0ZWM4ZGViNDc2NjZhZCZxPSoqJnBuPWZ5cGFnZSZwYz0xMCZjb3JyPTEmX3N1cHBvcnQ9MTAwMDAwMDAmc2lnbmF0dXJlPTRlMjdmZGRjZDJhMWE2NmQ2YzE3NjRlZDZiNzRiYWI3JywKICAgIC8vIOeUqOaJi+acuueahOWQp++8jOaQnuS4jeWumui/meS4qgogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9tb2JpbGVzby5iei4lNmQlNjclNzQlNzYuY29tL21zaXRlL3NlYXJjaC92Mj9xPSoqJnBuPWZ5cGFnZSZwYz0xMCcsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL3Bjd2ViLmFwaS5tZ3R2LmNvbS9lcGlzb2RlL2xpc3Q/cGFnZT0xJnNpemU9NTAmdmlkZW9faWQ9ZnlpZCcsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgbXVsdGk6IDEsCiAgICAvLyDliIbnsbvpk77mjqVmeXBhZ2Xlj4LmlbDmlK/mjIEx5LiqKCnooajovr7lvI8KICAgIC8vIGh0dHBzOi8vd3d3Lm1ndHYuY29tL2xpYi8zP2xhc3RwPWxpc3RfaW5kZXgma2luZD1hMSZ5ZWFyPWFsbCZjaGFyZ2VJbmZvPWExJnNvcnQ9YzIKICAgIHVybDogJy9yaWRlci9saXN0L3Bjd2ViL3YzP3BsYXRmb3JtPXBjd2ViJmNoYW5uZWxJZD1meWNsYXNzJnBuPWZ5cGFnZSZwYz04MCZodWRvbmc9MSZfc3VwcG9ydD0xMDAwMDAwMCZraW5kPWExJmFyZWE9YTEnLAogICAgZmlsdGVyX3VybDogJ3llYXI9e3tmbC55ZWFyIG9yICJhbGwifX0mc29ydD17e2ZsLnNvcnQgb3IgImFsbCJ9fSZjaGFyZ2VJbmZvPXt7ZmwuY2hhcmdlSW5mbyBvciAiYWxsIn19JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ+eUteinhuWJpybnlLXlvbEm57u86Im6JuWKqOa8qybnuqrlvZXniYcm5pWZ6IKyJuWwkeWEvycsCiAgICBjbGFzc191cmw6ICcyJjMmMSY1MCY1MSYxMTUmMTAnLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICALine truncated
|
||||
@@ -0,0 +1 @@
|
||||
Ly8g572R5Z2A5Y+R5biD6aG1IGh0dHBzOi8vbW9saWNwLmNvbQptdWJhbi7pppblm74u5LqM57qnLnRpdGxlID0gJy50ZXh0LWZmZi0tZm9udCYmVGV4dDsuZGF0YS0tc3BhbjplcSgwKSYmVGV4dCc7Cm11YmFuLummluWbvi7kuoznuqcuZGVzYyA9ICcjcmF0aW5nJiZUZXh0Ozs7LmRhdGEtLXNwYW46ZXEoMSkmJlRleHQ7LmRhdGEtLXNwYW46ZXEoMikmJlRleHQnOwptdWJhbi7pppblm74u5LqM57qnLmNvbnRlbnQgPSAnLmRlc2MmJlRleHQnOwp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAnSERtb2xpJywKICAgIOaooeadvzogJ+mmluWbvicsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuaGRtb2xpLnBybycsCiAgICAvLyB1cmw6Jy9tbGlzdC9meWNsYXNzLWZ5cGFnZS5odG1sJywKICAgIHVybDogJy9zZWFyY2gucGhwP3BhZ2U9ZnlwYWdlJnNlYXJjaHR5cGU9NSZ0aWQ9ZnlmaWx0ZXInLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAne3tmbC5jYXRlSWR9fSZqcT17e2ZsLmNsYXNzfX0mYXJlYT17e2ZsLmFyZWF9fSZ5ZWFyPXt7ZmwueWVhcn19JnN0YXRlPXt7Zmwuc3RhdGV9fSZvcmRlcj17e2ZsLmJ5fX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNhdGVJZCIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCWIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue6quW9leeJhyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIjEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniq/nvaoiLAogICAgICAgICAgICAgICAgInYiOiAiMzAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOeUuyIsCiAgICAgICAgICAgICAgICAidiI6ICIzMiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliafmg4UiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIuaImOS6iSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCWIiwKICAgICAgICAgICAgICAgICJ2IjogIuaBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIuWJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54ix5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIueIseaDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a625bqtIiwKICAgICAgICAgICAgICAgICJ2IjogIuWutuW6rSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqx5b+XIiwKICAgICAgICAgICAgICAgICJ2IjogIuWKseW/lyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIuaCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIuWKqOS9nCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuWlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIuWGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+yIiwKICAgICAgICAgICAgICAgICJ2IjogIuWOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oOK5oKaIiwKICAgICAgICAgICAgICAgICJ2IjogIuaDiuaCmiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+z5LmQIiwKICAgICAgICAgICAgICAgICJ2IjogIumfs+S5kCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuenkeW5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIueKr+e9qiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIiwKICAgICAgICAgICAgICAgICJ2IjogIui/kOWKqCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIuWWnOWJpyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iLAogICAgICAgICAgICAgICAgInYiOiAi576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAi5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm70iLAogICAgICAgICAgICAgICAgInYiOiAi5rOw5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm70iLAogICAgICAgICAgICAgICAgInYiOiAi5Lit5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAi5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsLine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+exs+aQnCcsCiAgICBob3N0OiAnaHR0cHM6Ly9taXNvc28uY2MvJywKICAgIGhvc3RKczogJycsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIDExOyBQaXhlbCA1KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTAuMC40NDMwLjkxIE1vYmlsZSBTYWZhcmkvNTM3LjM2JywKICAgIH0sCiAgICDnvJbnoIE6ICd1dGYtOCcsCiAgICB0aW1lb3V0OiA1MDAwLAogICAgdXJsOiAnaHR0cHM6Ly9taXNvc28uY2Mvc2VhcmNoP3E9ZnljbGFzcyZmb3JtYXQ9dmlkZW8mcGFnZT1meXBhZ2UnLAogICAgZmlsdGVyX3VybDogJycsCiAgICBkZXRhaWxVcmw6ICcnLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9taXNvc28uY2Mvc2VhcmNoP3E9KiomZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAnJywKICAgIGNsYXNzX3VybDogJycsCiAgICBwcm94eV9ydWxlOiAnJywKICAgIHNuaWZmZXI6IGZhbHNlLAogICAgaXNWaWRlbzogJycsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgcGFyc2VfdXJsOiAnJywKICAgIGxhenk6ICJqczpcbiAgICAgICAgaW5wdXQgPSAncHVzaDovLycgKyBpbnB1dDtcbiAgICAiLAogICAgbGltaXQ6IDksCiAgICBkb3VibGU6IGZhbHNlLAogICAgLy8g5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICdqczpcbiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCk7XG4gICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiYm9keSYmLnNlbWktc3BhY2UtbWVkaXVtLXZlcnRpY2FsIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIGxldCByZW1hcmtzID0gcGRmaCh4LCAiZGl2JiZpbWcmJmFsdCIpO1xuICAgICAgICAgICAgLy8g6L+H5ruk5o6J5YyF5ZCrIui/hembt+S6keebmCLnmoTlhoXlrrlcbiAgICAgICAgICAgIGlmKHJlbWFya3MuaW5jbHVkZXMoIui/hembt+S6keebmCIpKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ2h0dHBzOi8vaXMyLXNzbC5tenN0YXRpYy5jb20vaW1hZ2UvdGh1bWIvUHVycGxlMTIzL3Y0LzQ5LzI1Lzk3LzQ5MjU5Nzc1LTFhNmItYmE2Mi0zYzI4LWIyN2JmNjcxMmFkZS9zb3VyY2UvMTAyNHgxMDI0YmIuanBnXCcsXG4gICAgICAgICAgICAgICAgdm9kX3JlbWFya3M6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2lkOiBwZGZoKHgsICJkaXYmJmEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KS5maWx0ZXIoeCA9PiB4ICE9PSBudWxsKTtcbiAgICAnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICdoMSYmVGV4dCcsCiAgICAgICAgaW1nOiAnaW1nJiZzcmMnLAogICAgICAgIGRlc2M6ICcuY2FyZC10ZXh0OmVxKDIpJiZUZXh0Ozs7OycsCiAgICAgICAgY29udGVudDogJ2JvZHkmJi5zZW1pLXNwYWNlLWxvb3NlLXZlcnRpY2FsJiZhJiZocmVmJywKICAgICAgICB0YWJzOiAianM6VEFCUyA9IFsn57Gz5pCcJ10iLAogICAgICAgIGxpc3RzOiAianM6XG4gICAgICAgICAgICBMSVNUUyA9IFtdO1xuICAgICAgICAgICAgbGV0IGxpc3RzMSA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5zZW1pLXNwYWNlLWxvb3NlLXZlcnRpY2FsJykubWFwKGl0ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgX3R0ID0gcGRmaChpdCwgJ3NwYW4mJnRpdGxlJyk7XG4gICAgICAgICAgICAgICAgbGV0IF91dSA9IHBkZmgoaXQsICdhJiZocmVmJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIF90dCArICckJyArIF91dTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgTElTVFMucHVzaChsaXN0czEpO1xuICAgICAgICAiLAogICAgfSwKICAgIOaQnOe0ojogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICJib2R5JiYuc2VtaS1zcGFjZS1tZWRpdW0tdmVydGljYWwiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgbGV0IHJlbWFya3MgPSBwZGZoKHgsICJkaXYmJmltZyYmYWx0Iik7XG4gICAgICAgICAgICAvLyDov4fmu6TmjonljIXlkKsi6L+F6Zu35LqR55uYIueahOWGheWuuVxuICAgICAgICAgICAgaWYocmVtYXJrcy5pbmNsdWRlcygi6L+F6Zu35LqR55uYIikpIHJldHVybiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiZGl2JiZhJiZ0aXRsZSIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly9pczItc3NsLm16c3RhdGljLmNvbS9pbWFnZS90aHVtYi9QdXJwbGUxMjMvdjQvNDkvMjUvOTcvNDkyNTk3NzUtMWE2Yi1iYTYyLTNjMjgtYjI3YmY2NzEyYWRlL3NvdXJjZS8xMDI0eDEwMjRiYi5qcGdcJyxcbiAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfY29udGVudDogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImRpdiYmYSYmaHJlZiIpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmZpbHRlcih4ID0+IHggIT09IG51bGwpO1xuICAgICcsCiAgICBjYXRlX2V4Y2x1ZGU6ICfpppbpobV855WZ6KiAfEFQUHzkuIvovb186LWE6K6vfOaWsOmXu3zliqjmgIEnLAogICAgdGFiX2V4Y2x1ZGU6ICfnjJzkvaB85Zac5qyifOS4i+i9vXzliafmg4V85qacfOivhOiuuicsCiAgICDnsbvlnos6ICflvbHop4YnLAogICAgaG9tZVVybDogJ2h0dHBzOi8vbWlzb3NvLmNjLycsCiAgICDkuoznuqforr/pl67liY06ICcnLAogICAgZW5jb2Rpbmc6ICd1dGYtOCcsCiAgICBzZWFyY2hfZW5jb2Rpbmc6ICcnLAogICAg5Zu+54mH5p2l5rqQOiAnJywKICAgIOWbvueJh+abv+aNojogJycsCiAgICBwbGF5X2pzb246IFtdLAogICAgcGFnZWNvdW50OiB7fSwKICAgIHRhYl9yZW1vdmU6IFtdLAogICAgdGFiX29yZGVyOiBbXSwKICAgIHRhYl9yZW5hbWU6IHt9LAp9
|
||||
@@ -0,0 +1 @@
|
||||
bXViYW4udmZlZC7kuoznuqcudGl0bGUgPSAnaDEmJlRleHQ7LmZlZC1jb2wtbWQzLS1zcGFuOmVxKDApJiZUZXh0JzsKbXViYW4udmZlZC7kuoznuqcuZGVzYyA9ICcuZmVkLWNvbC1tZDM6ZXEoMykmJlRleHQ7OzsuZmVkLWNvbC1tZDY6ZXEoMCkmJlRleHQ7LmZlZC1jb2wtbWQ2LS1zcGFuOmVxKDEpJiZUZXh0JzsKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WOu+eci+WQpycsCiAgICDmqKHmnb86ICd2ZmVkJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5rOWRtLmNvbScsCiAgICAvLyB1cmw6ICcvaW5kZXgucGhwL3ZvZC9zaG93L2lkL2Z5Y2xhc3MvcGFnZS9meXBhZ2UuaHRtbCcsCiAgICB1cmw6ICcvaW5kZXgucGhwL3ZvZC9zaG93L2lkL2Z5Y2xhc3NmeWZpbHRlci5odG1sJywKICAgIGZpbHRlcmFibGU6IDEsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgZmlsdGVyX3VybDogJ3t7ZmwuYXJlYX19e3tmbC5ieX19e3tmbC5jbGFzc319L3BhZ2UvZnlwYWdle3tmbC55ZWFyfX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjMzIjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmkJ7nrJEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aQnueskSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57uP5YW4IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nu4/lhbgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueDreihgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54Ot6KGAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlgqzms6oiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WCrOazqiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rK75oSIIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/msrvmhIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueMjuWlhyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54yO5aWHIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlirHlv5ciLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WKseW/lyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5paXIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/miJjmlpciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWQjuWuqyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5ZCO5a6rIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnLrmiJgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+acuuaImCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGL54ixIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mgYvniLEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueZvuWQiCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv55m+5ZCIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+enkeW5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaOqOeQhiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5o6o55CGIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+agoeWbrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumtlOazlSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6a2U5rOVIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lyq5aiYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/kvKrlqJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+juWwkeWlsyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv576O5bCR5aWzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLokJ3ojokiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iQneiOiSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lqy5a2QIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/kurLlrZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6Z2S5pilIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56ue5oqAIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nq57mioAiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICALine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+Wlh+exs+WKqOa8qycsCiAgICBob3N0OiAnaHR0cDovL3d3dy5xaW1pcWltaS5uZXQnLAogICAgdXJsOiAnL3Nob3cvZnljbGFzc2Z5ZmlsdGVyLmh0bWwnLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAne3tmbC5hcmVhfX17e2ZsLmJ5fX17e2ZsLmNsYXNzfX17e2ZsLmxldHRlcn19L3BhZ2UvZnlwYWdle3tmbC55ZWFyfX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgInhpbmZhbiI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueDreihgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54Ot6KGAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpYflubsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+Wlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGL54ixIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mgYvniLEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuagoeWbrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5qCh5ZutIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlkI7lrqsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WQjuWuqyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pCe56yRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mkJ7nrJEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuayu+aEiCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5rK75oSIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnpZ7prZQiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+elnumtlCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6a2U5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/prZTms5UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueZvuWQiCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv55m+5ZCIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqjnkIYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aOqOeQhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/np5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56ue5oqAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z2S5pilIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/pnZLmmKUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oiY5LqJIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLokJ3ojokiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iQneiOiSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6a2U5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/prZTlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOaWlyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oiY5paXIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XluLgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aXpeW4uCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5pel5pysLyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvS8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasp+e+jiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYXJlYS/mrKfnvo4vIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6Z+p5Zu9LyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5riv5Y+wIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+a4r+WPsC8iCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICILine truncated
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLAogICAgdGl0bGU6ICfmgJ3lj6TlvbHop4YnLAogICAgaG9zdDogJ2h0dHBzOi8vc2lndXl5LmNuJywKICAgIHVybDogJy9zaG93L2Z5Y2xhc3MtLS0tLS0tLWZ5cGFnZS0tLS8nLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9zaWd1eXkuY24vc2VhcmNoLy0tLS0tLS0tLS0tLS0vP3dkPSoqJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJue7vOiJuibliqjmvKsnLAogICAgY2xhc3NfdXJsOiAnMSYyJjMmNCcsCiAgICBsYXp5OiBganM6CiAgICAgICAgICAgIGlmKC9cXC4obTN1OHxtcDQpLy50ZXN0KGlucHV0KSl7CiAgICAgICAgICAgICAgICBpbnB1dCA9IHtwYXJzZTowLHVybDppbnB1dH0KICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICBpZihydWxlLnBhcnNlX3VybC5zdGFydHNXaXRoKCdqc29uOicpKXsKICAgICAgICAgICAgICAgICAgICBsZXQgcHVybCA9IHJ1bGUucGFyc2VfdXJsLnJlcGxhY2UoJ2pzb246JywnJykraW5wdXQ7CiAgICAgICAgICAgICAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KHB1cmwpOwogICAgICAgICAgICAgICAgICAgIGlucHV0ID0ge3BhcnNlOjAsdXJsOkpTT04ucGFyc2UoaHRtbCkudXJsfQogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgaW5wdXQ9IHJ1bGUucGFyc2VfdXJsK2lucHV0OyAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgYCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAiVXNlci1BZ2VudCI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMxLjAuMC4wIFNhZmFyaS81MzcuMzYgRWRnLzEzMS4wLjAuMCIsCiAgICB9LAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICcuY29udGFpbmVyIC5mbGV4LmRlc2t0b3AtaG92ZXItZWZmZWN0O3NwYW4mJlRleHQ7aW1nJiZkYXRhLW9yaWdpbmFsO3AudHJ1bmNhdGUmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6IHsKICAgICAgICB0aXRsZTogJy5wLTMubW9iaWxlJiZUZXh0JywKICAgICAgICBpbWc6ICdpbWcmJmRhdGEtb3JpZ2luYWwnLAogICAgICAgIGRlc2M6ICcudGV4dC1zbS5weS0xJiZUZXh0JywKICAgICAgICBjb250ZW50OiAnLnRleHQtc2Vjb25kYXJ5JiZUZXh0JywKICAgICAgICB0YWJzOiAnLmZsZXguZmxleC1yb3cuZ2FwLTEuaXRlbXMtY2VudGVyJywKICAgICAgICBsaXN0czogJy5mbGV4LmZsZXgtY29sdW1uLm92ZXJmbG93LWF1dG8ubm8tc2Nyb2xsYmFyJiZsaScsCiAgICAgICAgdGFiX3RleHQ6ICdib2R5JiZUZXh0JywKICAgICAgICBsaXN0X3RleHQ6ICdhJiZUZXh0JywKICAgICAgICBsaXN0X3VybDogJ2EmJmhyZWYnLAogICAgfSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmkJzntKI6ICcuY29sLWxnLTYuY29sLW1kLTEyLm10LTIubWItMi5jdXJzb3ItcG9pbnRlcjsudG9waWMtZGV0YWlscy10aXRsZS1zdWIudGV4dC1zZWNvbmRhcnkmJlRleHQ7aW1nJiZkYXRhLW9yaWdpbmFsOy50b3BpYy1kZXRhaWxzLXRpdGxlJiZUZXh0O2EmJmhyZWYnLAp9
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WPjOWtkOaYnycsCiAgICBob3N0OiAnaHR0cHM6Ly8xLnN0YXIyLmNuJywKICAgIGhvc3RKczogJycsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIDExOyBQaXhlbCA1KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTAuMC40NDMwLjkxIE1vYmlsZSBTYWZhcmkvNTM3LjM2JywKICAgIH0sCiAgICDnvJbnoIE6ICd1dGYtOCcsCiAgICB0aW1lb3V0OiA1MDAwLAogICAgdXJsOiAnaHR0cHM6Ly8xLnN0YXIyLmNuL2Z5Y2xhc3MvJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vMS5zdGFyMi5jbi9zZWFyY2gvP2tleXdvcmQ9KionLAogICAgc2VhcmNoYWJsZTogMSwKICAgIHF1aWNrU2VhcmNoOiAxLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGNsYXNzX25hbWU6ICfnn63liacm5Zu95YmnJue7vOiJuibnlLXlvbEm6Z+p5pelJuiLsee+jiblpJbliacm5Yqo5ryrJywKICAgIGNsYXNzX3VybDogJ2RqJmp1Jnp5Jm12JnJoJnltJndqJmRtJywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICIuZXJ4LWxpc3QmJmxpIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ2h0dHBzOi8vZnMtaW0ta2VmdS43bW9vci1mczEuY29tL2x5LzRkMmMzZjAwLTdkNGMtMTFlNS1hZjE1LTQxYmY2M2FlNGVhMC8xNzQ2MjY5ODI3MTIwLzEuanBlZ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBwZGZoKHgsICJhJiZUZXh0IiksXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICdoMSYmVGV4dCcsCiAgICAgICAgaW1nOiAnaHR0cHM6Ly9mcy1pbS1rZWZ1Ljdtb29yLWZzMS5jb20vbHkvNGQyYzNmMDAtN2Q0Yy0xMWU1LWFmMTUtNDFiZjYzYWU0ZWEwLzE3NDYyNjk4MjcxMjAvMS5qcGVnJywKICAgICAgICBkZXNjOiAnLmNhcmQtdGV4dDplcSgyKSYmVGV4dDs7OzsnLAogICAgICAgIGNvbnRlbnQ6ICcuY2FyZC10ZXh0OmVxKDApJiZUZXh0JywKICAgICAgICB0YWJzOiAianM6VEFCUyA9IFsn5Y+M5pifJ10iLAogICAgICAgIGxpc3RzOiAianM6XG4gICAgICAgICAgICBMSVNUUyA9IFtdO1xuICAgICAgICAgICAgbGV0IGxpc3RzMSA9IHBkZmEoaHRtbCwgJy5kbGlwcC1jb250LWJkJykubWFwKGl0ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgX3R0ID0gcGRmaChpdCwgJ2EmJlRleHQnKTtcbiAgICAgICAgICAgICAgICBsZXQgX3V1ID0gcGRmaChpdCwgJ2EmJmhyZWYnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gX3R0ICsgJyQnICsgX3V1O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBMSVNUUy5wdXNoKGxpc3RzMSk7XG4gICAgICAgICIsCiAgICB9LAogICAg5pCc57SiOiAnanM6XG4gICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQpO1xuICAgICAgICBsZXQgbGlzdCA9IHBkZmEoaHRtbCwgIi5lcngtbGlzdCYmbGkiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiYSYmVGV4dCIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly9mcy1pbS1rZWZ1Ljdtb29yLWZzMS5jb20vbHkvNGQyYzNmMDAtN2Q0Yy0xMWU1LWFmMTUtNDFiZjYzYWU0ZWEwLzE3NDYyNjk4MjcxMjAvMS5qcGVnXCcsIFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBwZGZoKHgsICJhJiZUZXh0IiksXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAnLAogICAgY2F0ZV9leGNsdWRlOiAn6aaW6aG1fOeVmeiogHxBUFB85LiL6L29fOi1hOiur3zmlrDpl7t85Yqo5oCBJywKICAgIHRhYl9leGNsdWRlOiAn54yc5L2gfOWWnOasonzkuIvovb185Ymn5oOFfOamnHzor4TorronLAogICAg57G75Z6LOiAn5b2x6KeGJywKICAgIGhvbWVVcmw6ICdodHRwczovLzEuc3RhcjIuY24nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
Z2xvYmFsVGhpcy52b2QxID0gZnVuY3Rpb24oaWRzKSB7CiAgICBsZXQgaHRtbDEgPSByZXF1ZXN0KCdodHRwczovL3BiYWNjZXNzLnZpZGVvLnFxLmNvbS90cnBjLnZpZGVvc2VhcmNoLm1vYmlsZV9zZWFyY2guTXVsdGlUZXJtaW5hbFNlYXJjaC9NYlNlYXJjaD92cGxhdGZvcm09MicsIHsKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgICJ2ZXJzaW9uIjogIjI1MDQyMjAxIiwKICAgICAgICAgICAgImNsaWVudFR5cGUiOiAxLAogICAgICAgICAgICAiZmlsdGVyVmFsdWUiOiAiIiwKICAgICAgICAgICAgInV1aWQiOiAiQjFFNTA4NDctRDI1Ri00QzRCLUJCQTAtMzZGMDA5MzQ4N0Y2IiwKICAgICAgICAgICAgInJldHJ5IjogMCwKICAgICAgICAgICAgInF1ZXJ5IjogaWRzLAogICAgICAgICAgICAicGFnZW51bSI6IDAsCiAgICAgICAgICAgICJpc1ByZWZldGNoIjogdHJ1ZSwKICAgICAgICAgICAgInBhZ2VzaXplIjogMzAsCiAgICAgICAgICAgICJxdWVyeUZyb20iOiAwLAogICAgICAgICAgICAic2VhcmNoRGF0YWtleSI6ICIiLAogICAgICAgICAgICAidHJhbnNJbmZvIjogIiIsCiAgICAgICAgICAgICJpc25lZWRRYyI6IHRydWUsCiAgICAgICAgICAgICJwcmVRaWQiOiAiIiwKICAgICAgICAgICAgImFkQ2xpZW50SW5mbyI6ICIiLAogICAgICAgICAgICAiZXh0cmFJbmZvIjogewogICAgICAgICAgICAgICAgImlzTmV3TWFya0xhYmVsIjogIjEiLAogICAgICAgICAgICAgICAgIm11bHRpX3Rlcm1pbmFsX3BjIjogIjEiLAogICAgICAgICAgICAgICAgInRoZW1lVHlwZSI6ICIxIiwKICAgICAgICAgICAgICAgICJzdWdSZWxhdGVkSWRzIjogInt9IiwKICAgICAgICAgICAgICAgICJhcHBWZXJzaW9uIjogIiIKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTguMC40NzU4LjEzOSBTYWZhcmkvNTM3LjM2JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJywKICAgICAgICAgICAgJ29yaWdpbic6ICdodHRwczovL3YucXEuY29tJywKICAgICAgICAgICAgJ3JlZmVyZXInOiAnaHR0cHM6Ly92LnFxLmNvbS8nCiAgICAgICAgfSwKICAgICAgICAnbWV0aG9kJzogJ1BPU1QnCiAgICB9LCB0cnVlKTsKICAgIHJldHVybiBodG1sMTsKfQp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAn6IW+5LqR6am+6Zu+W+WumF0nLAogICAgaG9zdDogJ2h0dHBzOi8vdi4lNzElNzEuY29tJywKICAgIC8vIGhvbWVVcmw6ICcveC9idS9wYWdlc2hlZXQvbGlzdD9fYWxsPTEmYXBwZW5kPTEmY2hhbm5lbD1jaG9pY2UmbGlzdHBhZ2U9MSZvZmZzZXQ9MCZwYWdlc2l6ZT0yMSZpYXJlYT0tMSZzb3J0PTE4JywKICAgIGhvbWVVcmw6ICcveC9idS9wYWdlc2hlZXQvbGlzdD9fYWxsPTEmYXBwZW5kPTEmY2hhbm5lbD1jYXJ0b29uJmxpc3RwYWdlPTEmb2Zmc2V0PTAmcGFnZXNpemU9MjEmaWFyZWE9LTEmc29ydD0xOCcsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL25vZGUudmlkZW8uJTcxJTcxLmNvbS94L2FwaS9mbG9hdF92aW5mbzI/Y2lkPWZ5aWQnLAogICAgc2VhcmNoVXJsOiAnL3gvc2VhcmNoLz9xPSoqJnN0YWc9ZnlwYWdlJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vcGJhY2Nlc3MudmlkZW8uJTcxJTcxLmNvbS90cnBjLnZpZGVvc2VhcmNoLnNtYXJ0Ym94U2VydmVyLkh0dHBSb3VudFJlY2FsbC9TbWFydGJveD9xdWVyeT0qKiZhcHBJRD0zMTcyJmFwcEtleT1sR2hGSVBlRDNIc085eEVwJnBhZ2VOdW09KGZ5cGFnZS0xKSZwYWdlU2l6ZT0xMCcsCiAgICBzZWFyY2hVcmw6ICcqKicsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgZmlsdGVyYWJsZTogMSwKICAgIG11bHRpOiAxLAogICAgLy8gdXJsOicvY2hhbm5lbC9meWNsYXNzP2xpc3RwYWdlPWZ5cGFnZSZjaGFubmVsPWZ5Y2xhc3Mmc29ydD0xOCZfYWxsPTEnLAogICAgdXJsOiAnL3gvYnUvcGFnZXNoZWV0L2xpc3Q/X2FsbD0xJmFwcGVuZD0xJmNoYW5uZWw9ZnljbGFzcyZsaXN0cGFnZT0xJm9mZnNldD0oKGZ5cGFnZS0xKSoyMSkmcGFnZXNpemU9MjEmaWFyZWE9LTEnLAogICAgLy8gZmlsdGVyX3VybDogJ3NvcnQ9e3tmbC5zb3J0IG9yIDE4fX0meWVhcj17e2ZsLnllYXJ9fSZwYXk9e3tmbC5wYXl9fScsCiAgICAvLyBmaWx0ZXJfdXJsOiAnc29ydD17e2ZsLnNvcnQgb3IgNzV9fSZ5ZWFyPXt7ZmwueWVhcn19JnBheT17e2ZsLnBheX19JywKICAgIGZpbHRlcl91cmw6ICdzb3J0PXt7Zmwuc29ydCBvciA3NX19Jml5ZWFyPXt7ZmwuaXllYXJ9fSZ5ZWFyPXt7ZmwueWVhcn19Jml0eXBlPXt7ZmwudHlwZX19JmlmZWF0dXJlPXt7ZmwuZmVhdHVyZX19JmlhcmVhPXt7ZmwuYXJlYX19Jml0cmFpbGVyPXt7ZmwuaXRyYWlsZXJ9fSZnZW5kZXI9e3tmbC5zZXh9fScsCiAgICAvLyBmaWx0ZXI6ICdINHNJQUFBQUFBQUFBKzJVelVyRFFCQ0EzMlhPRVpMVUpyR3ZJajBzYWFEQk5pc3hCa0lKQ0czRmk0b2VwSWczRVFvaWVxaUgrdk0yM1pxK2hSdWFaTFo0Y2U5ejIvbG1kMmQyK05nUitIMGUrZ0YwRGtkd0ZHVFFnUk1lSjJCQXhJYVN3dnJxVm54Y3l6aGxnOVB0dHFqRUQyYy80NWNTeThEeUlEY2F2cjU3cS9sQnc4WFRkL0U2cWJuVDhNM3pURnljNzJSdEMvSnVtZCsyYzh3eTdLWjRueFNMNVo5dXhIUytHYytyODNzV1ZwMWVWdHRsNERsdWsxaDkzWXViV1pWd2R1cGxBWXV4b0ZndVZwK1AveTVvbS9aKy9ZeHlxZkFXOHBiS2JlUzJ5aTNrTy9lYnlFMkZ5MW5YWEJtN0REemtuc3BkNUs3S0hlU095dHZJMitYQXVnWWtLV2xEMm1ock0rUnBTQjhPbWFOdlRzcmlNRWd5Y29mYzBYYkhaM0hDZVVUdWtEdjY3dlREUVkvTUlYTzB6ZWx4bjVNNEpJNm1PUGt2Z3N3U0VwZ1BBQUE9JywKICAgIGZpbHRlcjogewogICAgICAgICJjaG9pY2UiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICALine truncated
|
||||
File renamed without changes.
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+S8mOmFt1vlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy4lNzklNmYlNzUlNmIlNzUuY29tJywKICAgIGhvbWVVcmw6ICcnLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9zZWFyY2guJTc5JTZmJTc1JTZiJTc1LmNvbS9hcGkvc2VhcmNoP3BnPWZ5cGFnZSZrZXl3b3JkPSoqJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBtdWx0aTogMSwKICAgIHVybDogJy9jYXRlZ29yeS9kYXRhP29wdGlvblJlZnJlc2g9MSZwYWdlTm89ZnlwYWdlJnBhcmFtcz1meWZpbHRlcicsCiAgICBmaWx0ZXJfdXJsOiAne3tmbH19JywKICAgIGZpbHRlcjogewogICAgICAgICLnlLXop4bliaciOiBbewogICAgICAgICAgICAia2V5IjogIm1haW5fYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWFqOmDqOWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6jlnLDljLoiLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhoXlnLDliaciLAogICAgICAgICAgICAgICAgInYiOiAi5Lit5Zu95YaF5ZywIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmuK/liaciLAogICAgICAgICAgICAgICAgInYiOiAi5Lit5Zu96aaZ5rivIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj7DliaciLAogICAgICAgICAgICAgICAgInYiOiAi5Lit5Zu95Y+w5rm+IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nliaciLAogICAgICAgICAgICAgICAgInYiOiAi6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7liaciLAogICAgICAgICAgICAgICAgInYiOiAi576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7HliaciLAogICAgICAgICAgICAgICAgInYiOiAi6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XliaciLAogICAgICAgICAgICAgICAgInYiOiAi5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7DliaciLAogICAgICAgICAgICAgICAgInYiOiAi5rOw5Zu9IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ0YWdzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YWo6YOo57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqOexu+WeiyIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpSIsCiAgICAgICAgICAgICAgICAidiI6ICLpnZLmmKUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPpOijhSIsCiAgICAgICAgICAgICAgICAidiI6ICLlj6Too4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLniLHmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumDveW4giIsCiAgICAgICAgICAgICAgICAidiI6ICLpg73luIIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWWnOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICLllpzliacs5pCe56yRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjkuokiLAogICAgICAgICAgICAgICAgInYiOiAi5oiY5LqJIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpvml4UiLAogICAgICAgICAgICAgICAgInYiOiAi5Yab5peFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLosI3miJgiLAogICAgICAgICAgICAgICAgInYiOiAi6LCN5oiYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlgbblg48iLAogICAgICAgICAgICAgICAgInYiOiAi5YG25YOPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLorabljKoiLAogICAgICAgICAgICAgICAgInYiOiAi6K2m5YyqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAi5YaS6ZmpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnqb/otooiLAogICAgICAgICAgICAgICAgInYiOiAi56m/6LaKIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLku5nkvqAiLAogICAgICAgICAgICAgICAgInYiOiAi5LuZ5L6gIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAi5q2m5L6gIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAi5oKs55aRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvarmoYgiLAogICAgICAgICAgICAgICAgInYiOiAi572q5qGIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrrbluq0iLAogICAgICAgICAgICAgICAgInYiOiAi5a625bqtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAi5Y6G5Y+yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlubTku6MiLAogICAgICAgICAgICAgICAgInYiOiAi5bm05LujIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpzmnZEiLAogICAgICAgICAgICAgICAgInYiOiAi5Yac5p2RIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YWo6YOo5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqOW5tOS7vSIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwLine truncated
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+W8guS4lueVjOWKqOa8qycsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuZG1taWt1LmNvbS8nLAogICAgaG9tZVVybDogJy9pbmRleC5waHAvdm9kL3Nob3cvaWQvMjIuaHRtbCcsCiAgICAvLyB1cmw6Jy9pbmRleC5waHAvdm9kL3Nob3cvY2xhc3MvZnljbGFzcy9pZC8yMC9wYWdlL2Z5cGFnZS5odG1sJywKICAgIHVybDogJy9pbmRleC5waHAvdm9kL3Nob3cvZnljbGFzc2Z5ZmlsdGVyLmh0bWwnLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcl91cmw6ICd7e2ZsLnR5cGV9fS9pZC8yMC9wYWdlL2Z5cGFnZXt7ZmwueWVhcn19JywKICAgIGZpbHRlcjogewogICAgICAgICJhcmVhL+aXpeacrCI6IFt7CiAgICAgICAgICAgICJrZXkiOiAidHlwZSIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJPVkEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL09WQSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5Zy654mIIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/liaflnLrniYgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXoOS/riIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3MvQkTml6Dkv64iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiQneiOiSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6JCd6I6JIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrablnJIiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WtpuWckiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZCO5a6rIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lkI7lrqsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oGL54ixIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+eDreihgCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56We6a2UIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/npZ7prZQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5aWH5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmsrvmhIgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+ayu+aEiCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pCe56yRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mkJ7nrJEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueZvuWQiCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv55m+5ZCIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6a2U5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/prZTms5UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacuuaImCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5py65oiYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjkuokiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aImOS6iSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/niq/nvaoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oKs55aRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqjnkIYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aOqOeQhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/np5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56ue5oqAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLov5DliqgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+i/kOWKqCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6IC9576OIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ogL3nvo4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFLine truncated
|
||||
@@ -0,0 +1 @@
|
||||
Ly8g5Y+R5biD6aG1IGh0dHBzOi8vYWNnZmFucy5vcmcvcHViLmh0bWwKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+aAoeiQseWKqOa8qycsCiAgICAvLyBob3N0OidodHRwczovL3d3dy55eGRtbG92ZS5jb20nLAogICAgaG9zdDogJ2h0dHBzOi8vYWNnZmFucy5vcmcvcHViLmh0bWwnLAogICAgaG9zdEpzOiAncHJpbnQoSE9TVCk7bGV0IGh0bWw9cmVxdWVzdChIT1NULHtoZWFkZXJzOnsiVXNlci1BZ2VudCI6UENfVUF9fSk7bGV0IHNyYyA9IGpzcC5wZGZoKGh0bWwsInA6ZXEoMCkmJmEmJlRleHQiKTtwcmludChzcmMpO0hPU1Q9c3JjJywgLy/nvZHpobXln5/lkI3moLnliqjmgIHmipPlj5Zqc+S7o+eggeOAgumAmui/h0hPU1Q96LWL5YC8CiAgICAvLyB1cmw6Jy9jYXRlZ29yeS5odG1sP2NoYW5uZWw9MTcmemhvbmdsZWk9ZnljbGFzcyZvcmRlcmJ5PXB1YmRhdGUmdG90YWxyZXN1bHQ9Mjk5OSZwYWdlbm89ZnlwYWdlJywKICAgIHVybDogJy9jYXRlZ29yeS5odG1sP2NoYW5uZWw9MTcmemhvbmdsZWk9ZnljbGFzc2Z5ZmlsdGVyJnBhZ2Vubz1meXBhZ2UnLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAnJnt7ZmwuYnkgb3IgIm9yZGVyYnk9cHViZGF0ZSJ9fSZ7e2ZsLnllYXJ9fSZ7e2ZsLmFyZWF9fSZ7e2ZsLnN0YX19Jnt7ZmwuY2xhc3N9fScsCiAgICBmaWx0ZXI6IHsKICAgICAgICAiVFYiOiBbewogICAgICAgICAgICAia2V5IjogInN0YSIsCiAgICAgICAgICAgICJuYW1lIjogIui/m+W6piIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLov57ovb3kuK0iLAogICAgICAgICAgICAgICAgInYiOiAic3RhdHVzPei/nui9veS4rSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bey5a6M57uTIiwKICAgICAgICAgICAgICAgICJ2IjogInN0YXR1cz3lt7Llroznu5MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacquaSreaUviIsCiAgICAgICAgICAgICAgICAidiI6ICJzdGF0dXM95pyq5pKt5pS+IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICJhcmVhPeaXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogImFyZWE95Lit5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrKfnvo4iLAogICAgICAgICAgICAgICAgInYiOiAiYXJlYT3mrKfnvo4iCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAieWVhcj0yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogInllYXI9MjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAieWVhcj0yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogInllYXI9MjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAieWVhcj0yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogInllYXI9MjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAieWVhcj0yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogInllYXI9MjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAieWVhcj0yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogInllYXI9MjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuabtOaXqSIsCiAgICAgICAgICAgICAgICAidiI6ICJ5ZWFyPTIwMTDliY0iCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Ymn5oOFIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICJqcWx4PeWGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54Ot6KGAIiwKICAgICAgICAgICAgICAgICJ2IjogImpxbHg954Ot6KGAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmg4UiLAogICAgICAgICAgICAgICAgInYiOiAianFseD3niLHmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICJqcWx4PeaQnueskSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZCO5a6rIiwKICAgICAgICAgICAgICAgICJ2IjogImpxbHg95ZCO5a6rIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iLAogICAgICAgICAgICAgICAgInYiOiAianFseD3moKHlm60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICALine truncated
|
||||
-843
@@ -1,843 +0,0 @@
|
||||
var rule = {
|
||||
title: '360影视[官]',
|
||||
host: 'https://www.360kan.com',
|
||||
homeUrl: 'https://api.web.360kan.com/v1/rank?cat=2&size=9',
|
||||
detailUrl: 'https://api.web.360kan.com/v1/detail?cat=fyclass&id=fyid',
|
||||
searchUrl: 'https://api.so.360kan.com/index?force_v=1&kw=**&from=&pageno=fypage&v_ap=1&tab=all',
|
||||
url: 'https://api.web.360kan.com/v1/fyfilter&size=35&pageno=fypage&callback=',
|
||||
filterable: 1,
|
||||
filter_url: 'filter/list?catid=fyclass&rank={{fl.排序}}&cat={{fl.类型}}&year={{fl.年代}}&area={{fl.地区}}',
|
||||
filter: {
|
||||
"1": [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
}, {
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "动画",
|
||||
"v": "动画"
|
||||
}, {
|
||||
"n": "文艺",
|
||||
"v": "文艺"
|
||||
}, {
|
||||
"n": "纪录",
|
||||
"v": "纪录"
|
||||
}, {
|
||||
"n": "传记",
|
||||
"v": "传记"
|
||||
}, {
|
||||
"n": "歌舞",
|
||||
"v": "歌舞"
|
||||
}, {
|
||||
"n": "古装",
|
||||
"v": "古装"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
}, {
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
}, {
|
||||
"n": "伦理",
|
||||
"v": "伦理"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "地区",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "内地",
|
||||
"v": "大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "台湾"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "法国",
|
||||
"v": "法国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
}, {
|
||||
"n": "德国",
|
||||
"v": "德国"
|
||||
}, {
|
||||
"n": "印度",
|
||||
"v": "印度"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "lt_year"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近热映",
|
||||
"v": "rankhot"
|
||||
}, {
|
||||
"n": "最近上映",
|
||||
"v": "ranklatest"
|
||||
}, {
|
||||
"n": "最受好评",
|
||||
"v": "rankpoint"
|
||||
}]
|
||||
}],
|
||||
"2": [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "言情",
|
||||
"v": "言情"
|
||||
}, {
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
}, {
|
||||
"n": "伦理",
|
||||
"v": "伦理"
|
||||
}, {
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "都市",
|
||||
"v": "都市"
|
||||
}, {
|
||||
"n": "偶像",
|
||||
"v": "偶像"
|
||||
}, {
|
||||
"n": "古装",
|
||||
"v": "古装"
|
||||
}, {
|
||||
"n": "军事",
|
||||
"v": "军事"
|
||||
}, {
|
||||
"n": "警匪",
|
||||
"v": "警匪"
|
||||
}, {
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
}, {
|
||||
"n": "神话",
|
||||
"v": "神话"
|
||||
}, {
|
||||
"n": "谍战",
|
||||
"v": "谍战"
|
||||
}, {
|
||||
"n": "青春",
|
||||
"v": "青春剧"
|
||||
}, {
|
||||
"n": "家庭",
|
||||
"v": "家庭剧"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "情景",
|
||||
"v": "情景"
|
||||
}, {
|
||||
"n": "武侠",
|
||||
"v": "武侠"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "地区",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "内地",
|
||||
"v": "内地"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "台湾"
|
||||
}, {
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}, {
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
}, {
|
||||
"n": "新加坡",
|
||||
"v": "新加坡"
|
||||
}]
|
||||
}, {
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "lt_year"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近热映",
|
||||
"v": "rankhot"
|
||||
}, {
|
||||
"n": "最近上映",
|
||||
"v": "ranklatest"
|
||||
}, {
|
||||
"n": "最受好评",
|
||||
"v": "rankpoint"
|
||||
}]
|
||||
}],
|
||||
"3": [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "脱口秀",
|
||||
"v": "脱口秀"
|
||||
}, {
|
||||
"n": "真人秀",
|
||||
"v": "真人秀"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "搞笑"
|
||||
}, {
|
||||
"n": "选秀",
|
||||
"v": "选秀"
|
||||
}, {
|
||||
"n": "八卦",
|
||||
"v": "八卦"
|
||||
}, {
|
||||
"n": "访谈",
|
||||
"v": "访谈"
|
||||
}, {
|
||||
"n": "情感",
|
||||
"v": "情感"
|
||||
}, {
|
||||
"n": "生活",
|
||||
"v": "生活"
|
||||
}, {
|
||||
"n": "晚会",
|
||||
"v": "晚会"
|
||||
}, {
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
}, {
|
||||
"n": "职场",
|
||||
"v": "职场"
|
||||
}, {
|
||||
"n": "美食",
|
||||
"v": "美食"
|
||||
}, {
|
||||
"n": "时尚",
|
||||
"v": "时尚"
|
||||
}, {
|
||||
"n": "游戏",
|
||||
"v": "游戏"
|
||||
}, {
|
||||
"n": "少儿",
|
||||
"v": "少儿"
|
||||
}, {
|
||||
"n": "体育",
|
||||
"v": "体育"
|
||||
}, {
|
||||
"n": "纪实",
|
||||
"v": "纪实"
|
||||
}, {
|
||||
"n": "科教",
|
||||
"v": "科教"
|
||||
}, {
|
||||
"n": "曲艺",
|
||||
"v": "曲艺"
|
||||
}, {
|
||||
"n": "歌舞",
|
||||
"v": "歌舞"
|
||||
}, {
|
||||
"n": "财经",
|
||||
"v": "财经"
|
||||
}, {
|
||||
"n": "汽车",
|
||||
"v": "汽车"
|
||||
}, {
|
||||
"n": "播报",
|
||||
"v": "播报"
|
||||
}, {
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}]
|
||||
}, {
|
||||
"key": "地区",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "内地",
|
||||
"v": "大陆"
|
||||
}, {
|
||||
"n": "中国香港",
|
||||
"v": "香港"
|
||||
}, {
|
||||
"n": "中国台湾",
|
||||
"v": "台湾"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "欧美",
|
||||
"v": "欧美"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近热映",
|
||||
"v": "rankhot"
|
||||
}, {
|
||||
"n": "最近上映",
|
||||
"v": "ranklatest"
|
||||
}]
|
||||
}],
|
||||
"4": [{
|
||||
"key": "类型",
|
||||
"name": "类型",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "热血",
|
||||
"v": "热血"
|
||||
}, {
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
}, {
|
||||
"n": "美少女",
|
||||
"v": "美少女"
|
||||
}, {
|
||||
"n": "魔幻",
|
||||
"v": "魔幻"
|
||||
}, {
|
||||
"n": "经典",
|
||||
"v": "经典"
|
||||
}, {
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
}, {
|
||||
"n": "少儿",
|
||||
"v": "少儿"
|
||||
}, {
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
}, {
|
||||
"n": "搞笑",
|
||||
"v": "搞笑"
|
||||
}, {
|
||||
"n": "推理",
|
||||
"v": "推理"
|
||||
}, {
|
||||
"n": "恋爱",
|
||||
"v": "恋爱"
|
||||
}, {
|
||||
"n": "治愈",
|
||||
"v": "治愈"
|
||||
}, {
|
||||
"n": "幻想",
|
||||
"v": "幻想"
|
||||
}, {
|
||||
"n": "校园",
|
||||
"v": "校园"
|
||||
}, {
|
||||
"n": "动物",
|
||||
"v": "动物"
|
||||
}, {
|
||||
"n": "机战",
|
||||
"v": "机战"
|
||||
}, {
|
||||
"n": "亲子",
|
||||
"v": "亲子"
|
||||
}, {
|
||||
"n": "儿歌",
|
||||
"v": "儿歌"
|
||||
}, {
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
}, {
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
}, {
|
||||
"n": "怪物",
|
||||
"v": "怪物"
|
||||
}, {
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
}, {
|
||||
"n": "益智",
|
||||
"v": "益智"
|
||||
}, {
|
||||
"n": "青春",
|
||||
"v": "青春"
|
||||
}, {
|
||||
"n": "童话",
|
||||
"v": "童话"
|
||||
}, {
|
||||
"n": "竞技",
|
||||
"v": "竞技"
|
||||
}, {
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
}, {
|
||||
"n": "社会",
|
||||
"v": "社会"
|
||||
}, {
|
||||
"n": "友情",
|
||||
"v": "友情"
|
||||
}, {
|
||||
"n": "真人版",
|
||||
"v": "真人版"
|
||||
}, {
|
||||
"n": "电影版",
|
||||
"v": "电影版"
|
||||
}, {
|
||||
"n": "OVA版",
|
||||
"v": "OVA版"
|
||||
}, {
|
||||
"n": "TV版",
|
||||
"v": "TV版"
|
||||
}, {
|
||||
"n": "新番动画",
|
||||
"v": "新番动画"
|
||||
}, {
|
||||
"n": "完结动画",
|
||||
"v": "完结动画"
|
||||
}]
|
||||
}, {
|
||||
"key": "地区",
|
||||
"name": "地区",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "内地",
|
||||
"v": "大陆"
|
||||
}, {
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
}, {
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}]
|
||||
}, {
|
||||
"key": "年代",
|
||||
"name": "年代",
|
||||
"value": [{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
}, {
|
||||
"n": "2025",
|
||||
"v": "2025"
|
||||
}, {
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
}, {
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
}, {
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
}, {
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
}, {
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
}, {
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}, {
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
}, {
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}, {
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
}, {
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
}, {
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
}, {
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
}, {
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
}, {
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
}, {
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}, {
|
||||
"n": "2009",
|
||||
"v": "2009"
|
||||
}, {
|
||||
"n": "2008",
|
||||
"v": "2008"
|
||||
}, {
|
||||
"n": "2007",
|
||||
"v": "2007"
|
||||
}, {
|
||||
"n": "2006",
|
||||
"v": "2006"
|
||||
}, {
|
||||
"n": "2005",
|
||||
"v": "2005"
|
||||
}, {
|
||||
"n": "2004",
|
||||
"v": "2004"
|
||||
}, {
|
||||
"n": "更早",
|
||||
"v": "更早"
|
||||
}]
|
||||
}, {
|
||||
"key": "排序",
|
||||
"name": "排序",
|
||||
"value": [{
|
||||
"n": "最近热映",
|
||||
"v": "rankhot"
|
||||
}, {
|
||||
"n": "最近上映",
|
||||
"v": "ranklatest"
|
||||
}]
|
||||
}]
|
||||
},
|
||||
filter_def: {},
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA'
|
||||
},
|
||||
timeout: 5000,
|
||||
class_name: '电视剧&电影&综艺&动漫',
|
||||
class_url: '2&1&3&4',
|
||||
limit: 5,
|
||||
multi: 1,
|
||||
searchable: 2,
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
try {
|
||||
let api = "" + input.split("?")[0];
|
||||
console.log(api);
|
||||
let response = fetch(api, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': 'okhttp/3.14.9',
|
||||
'Content-Type': 'application/x-www-form-urlencoded'
|
||||
}
|
||||
});
|
||||
let bata = JSON.parse(response);
|
||||
if (bata.url.includes("qq,qiyi,imgo,youku,leshi,bilibili1,m1905")) {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: bata.url,
|
||||
jx: 0,
|
||||
danmaku: "http://103.45.162.207:25252/hbdm.php?key=7894561232&id=" + input.split("?")[0]
|
||||
};
|
||||
} else {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: input.split("?")[0],
|
||||
jx: 1,
|
||||
danmaku: "http://103.45.162.207:25252/hbdm.php?key=7894561232&id=" + input.split("?")[0]
|
||||
};
|
||||
}
|
||||
} catch {
|
||||
input = {
|
||||
parse: 0,
|
||||
url: input.split("?")[0],
|
||||
jx: 1,
|
||||
danmaku: "http://103.45.162.207:25252/hbdm.php?key=7894561232&id=" + input.split("?")[0]
|
||||
};
|
||||
}
|
||||
}),
|
||||
// 疑似t4专用的
|
||||
// lazy:'js:input={parse: 1, playUrl: "", jx: 1, url: input.split("?")[0]}',
|
||||
// 手动调用解析请求json的url,此lazy不方便
|
||||
// lazy:'js:input="https://cache.json.icu/home/api?type=ys&uid=292796&key=fnoryABDEFJNPQV269&url="+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input',
|
||||
推荐: 'json:data;title;cover;comment;cat+ent_id;description',
|
||||
一级: 'json:data.movies;title;cover;pubdate;id;description',
|
||||
二级: '',
|
||||
二级: $js.toString(() => {
|
||||
let html = JSON.parse(fetch(input, fetch_params));
|
||||
let data = html.data;
|
||||
let tilte = data.title;
|
||||
let img = data.cdncover;
|
||||
let vod_type = data.moviecategory.join(",");
|
||||
let area = data.area.join(",");
|
||||
let director = data.director.join(",");
|
||||
let actor = data.actor.join(",");
|
||||
let content = data.description;
|
||||
let base_vod = {
|
||||
vod_id: input,
|
||||
vod_name: tilte,
|
||||
type_name: vod_type,
|
||||
vod_actor: actor,
|
||||
vod_director: director,
|
||||
vod_content: content,
|
||||
vod_remarks: area,
|
||||
vod_pic: urljoin2(input, img)
|
||||
};
|
||||
let delta = 50;
|
||||
let vod_play = {};
|
||||
let sites = data.playlink_sites;
|
||||
sites.forEach(function(site) {
|
||||
let playList = "";
|
||||
let vodItems = [];
|
||||
print(data)
|
||||
if (data.allupinfo) {
|
||||
let total = parseInt(data.allupinfo[site]);
|
||||
print(total)
|
||||
for (let j = 1; j < total; j += delta) {
|
||||
let end = Math.min(total, j + delta - 1);
|
||||
print(end)
|
||||
let url2 = buildUrl(input, {
|
||||
start: j,
|
||||
end: end,
|
||||
site: site
|
||||
});
|
||||
let vod_data = JSON.parse(fetch(url2), fetch_params).data;
|
||||
if (vod_data != null) {
|
||||
if (vod_data.allepidetail) {
|
||||
vod_data = vod_data.allepidetail[site];
|
||||
vod_data.forEach(function(item, index) {
|
||||
vodItems.push((item.playlink_num || "") + "$" + urlDeal(item.url || ""))
|
||||
})
|
||||
} else {
|
||||
vod_data = vod_data.defaultepisode;
|
||||
vod_data.forEach(function(item, index) {
|
||||
vodItems.push((item.period || "") + (item.name || "") + "$" + urlDeal(item.url) || "")
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
let item = data.playlinksdetail[site];
|
||||
vodItems.push((item.sort || "") + "$" + urlDeal(item.default_url || ""))
|
||||
}
|
||||
if (vodItems.length > 0) {
|
||||
playList = vodItems.join("#")
|
||||
}
|
||||
if (playList.length < 1) {
|
||||
return
|
||||
}
|
||||
vod_play[site] = playList
|
||||
});
|
||||
let tabs = Object.keys(vod_play);
|
||||
let playUrls = [];
|
||||
for (let id in tabs) {
|
||||
print("id:" + id);
|
||||
playUrls.push(vod_play[tabs[id]])
|
||||
}
|
||||
if (tabs.length > 0) {
|
||||
let vod_play_from = tabs.join("$$$");
|
||||
let vod_play_url = playUrls.join("$$$");
|
||||
base_vod.vod_play_from = vod_play_from;
|
||||
base_vod.vod_play_url = vod_play_url
|
||||
}
|
||||
VOD = base_vod;
|
||||
}),
|
||||
搜索: 'json:data.longData.rows;titleTxt||titlealias;cover;cat_name;cat_id+en_id;description',
|
||||
}
|
||||
-2299
File diff suppressed because it is too large.
Load diff
-52
@@ -1,52 +0,0 @@
|
||||
var rule = {
|
||||
title: '双子星',
|
||||
host: 'https://1.star2.cn',
|
||||
hostJs: '',
|
||||
headers: {
|
||||
'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36',
|
||||
},
|
||||
编码: 'utf-8',
|
||||
timeout: 5000,
|
||||
url: 'https://1.star2.cn/fyclass/',
|
||||
filter_url: '',
|
||||
detailUrl: '',
|
||||
searchUrl: 'https://1.star2.cn/search/?keyword=**',
|
||||
searchable: 1,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
class_name: '短剧&国剧&综艺&电影&韩日&英美&外剧&动漫',
|
||||
class_url: 'dj&ju&zy&mv&rh&ym&wj&dm',
|
||||
proxy_rule: '',
|
||||
sniffer: false,
|
||||
isVideo: '',
|
||||
play_parse: true,
|
||||
parse_url: '',
|
||||
lazy: "js:\n input = 'push://' + input;\n ",
|
||||
limit: 9,
|
||||
double: false,
|
||||
推荐: '*',
|
||||
一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, ".erx-list&&li");\n VODS = list.map(x => {\n return {\n vod_name: pdfh(x, "a&&Text"),\n vod_pic: \'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1746269827120/1.jpeg\',\n vod_remarks: pdfh(x, "a&&Text"),\n vod_content: pdfh(x, "a&&Text"),\n vod_id: pdfh(x, "a&&href")\n }\n });\n ',
|
||||
二级: {
|
||||
title: 'h1&&Text',
|
||||
img: 'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1746269827120/1.jpeg',
|
||||
desc: '.card-text:eq(2)&&Text;;;;',
|
||||
content: '.card-text:eq(0)&&Text',
|
||||
tabs: "js:TABS = ['双星']",
|
||||
lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, '.dlipp-cont-bd').map(it => {\n let _tt = pdfh(it, 'a&&Text');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ",
|
||||
},
|
||||
搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, ".erx-list&&li");\n VODS = list.map(x => {\n return {\n vod_name: pdfh(x, "a&&Text"),\n vod_pic: \'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1746269827120/1.jpeg\', \n vod_remarks: pdfh(x, "a&&Text"),\n vod_content: pdfh(x, "a&&Text"),\n vod_id: pdfh(x, "a&&href")\n }\n });\n ',
|
||||
cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态',
|
||||
tab_exclude: '猜你|喜欢|下载|剧情|榜|评论',
|
||||
类型: '影视',
|
||||
homeUrl: 'https://1.star2.cn',
|
||||
二级访问前: '',
|
||||
encoding: 'utf-8',
|
||||
search_encoding: '',
|
||||
图片来源: '',
|
||||
图片替换: '',
|
||||
play_json: [],
|
||||
pagecount: {},
|
||||
tab_remove: [],
|
||||
tab_order: [],
|
||||
tab_rename: {},
|
||||
}
|
||||
-52
@@ -1,52 +0,0 @@
|
||||
var rule = {
|
||||
title: '懒盘搜',
|
||||
host: 'https://www.lzpanx.com/',
|
||||
hostJs: '',
|
||||
headers: {
|
||||
'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36',
|
||||
},
|
||||
编码: 'utf-8',
|
||||
timeout: 5000,
|
||||
url: 'https://www.lzpanx.com/search?q=fyclass&format=video&page=fypage',
|
||||
filter_url: '',
|
||||
detailUrl: '',
|
||||
searchUrl: 'https://www.lzpanx.com/search?q=**&format=video&page=fypage',
|
||||
searchable: 1,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
class_name: '剧集&电影&短剧&动漫&综艺',
|
||||
class_url: '剧集&电影&短网剧&动漫&综艺',
|
||||
proxy_rule: '',
|
||||
sniffer: false,
|
||||
isVideo: '',
|
||||
play_parse: true,
|
||||
parse_url: '',
|
||||
lazy: "js:\n input = 'push://' + input;\n ",
|
||||
limit: 9,
|
||||
double: false,
|
||||
// 推荐: '*',
|
||||
一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'https://ww1.sinaimg.cn/mw690/006faMndly1htmb1m08adj30e20e2q3m.jpg\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ',
|
||||
二级: {
|
||||
title: 'h1&&Text',
|
||||
img: 'img&&src',
|
||||
desc: '.card-text:eq(2)&&Text;;;;',
|
||||
content: 'body&&.semi-space-loose-vertical&&a&&href',
|
||||
tabs: "js:TABS = ['懒盘']",
|
||||
lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ",
|
||||
},
|
||||
搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'https://ww1.sinaimg.cn/mw690/006faMndly1htmb1m08adj30e20e2q3m.jpg\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ',
|
||||
cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态',
|
||||
tab_exclude: '猜你|喜欢|下载|剧情|榜|评论',
|
||||
类型: '影视',
|
||||
homeUrl: 'https://www.lzpanx.com/',
|
||||
二级访问前: '',
|
||||
encoding: 'utf-8',
|
||||
search_encoding: '',
|
||||
图片来源: '',
|
||||
图片替换: '',
|
||||
play_json: [],
|
||||
pagecount: {},
|
||||
tab_remove: [],
|
||||
tab_order: [],
|
||||
tab_rename: {},
|
||||
}
|
||||
-1392
File diff suppressed because it is too large.
Load diff
-73
@@ -1,73 +0,0 @@
|
||||
var rule = {
|
||||
title: '百酷短剧',
|
||||
host: 'https://api.kuleu.com/',
|
||||
hostJs: '',
|
||||
headers: {
|
||||
'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36',
|
||||
},
|
||||
编码: 'utf-8',
|
||||
timeout: 5000,
|
||||
url: 'https://api.kuleu.com/fyclass',
|
||||
filter_url: '',
|
||||
detailUrl: '',
|
||||
searchUrl: 'https://api.kuleu.com/api/bddj?text=**',
|
||||
searchable: 1,
|
||||
quickSearch: 1,
|
||||
filterable: 1,
|
||||
class_name: '今日更新&百度短剧&每日更新&夸克短剧&每日更新',
|
||||
class_url: 'api/yingshi&api/bddj?list&api/bddj?today&api/action?list&api/action?today',
|
||||
proxy_rule: '',
|
||||
sniffer: false,
|
||||
isVideo: '',
|
||||
play_parse: true,
|
||||
parse_url: '',
|
||||
lazy: "js:\n input = 'push://' + input;\n ",
|
||||
limit: 9,
|
||||
double: false,
|
||||
// 推荐: '*',
|
||||
一级: $js.toString(() => {
|
||||
let cid = MY_CATE || '108';
|
||||
let pg = MY_PAGE || 1;
|
||||
let url = `https://api.kuleu.com/${cid}`;
|
||||
let khtml = fetch(url, {headers: rule.headers});
|
||||
let kjson = JSON.parse(khtml);
|
||||
VODS = [];
|
||||
kjson.data.forEach(it => {
|
||||
VODS.push({
|
||||
vod_name: it.name,
|
||||
vod_pic: `https://tse3-mm.cn.bing.net/th/id/OIP-C.rlQOYtsriwWKHwofGufJ_AHaQd?w=157&h=350&c=7&r=0&o=7&dpr=3.7&pid=1.7&rm=3`,
|
||||
vod_remarks: it.addtime,
|
||||
vod_id: `push://${it.viewlink}`
|
||||
});
|
||||
});
|
||||
}),
|
||||
二级: '*',
|
||||
搜索:$js.toString(() => {
|
||||
let url = `https://api.kuleu.com/api/bddj?text=${KEY}`;
|
||||
let khtml = fetch(url);
|
||||
let kjson = JSON.parse(khtml);
|
||||
VODS = [];
|
||||
kjson.data.forEach(it => {
|
||||
VODS.push({
|
||||
vod_name: it.name,
|
||||
vod_pic: it.pPic,
|
||||
vod_remarks: it.addtime,
|
||||
vod_id: `push://${it.viewlink}`
|
||||
})
|
||||
})
|
||||
}),
|
||||
cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态',
|
||||
tab_exclude: '猜你|喜欢|下载|剧情|榜|评论',
|
||||
类型: '影视',
|
||||
homeUrl: 'https://www.lzpanx.com/',
|
||||
二级访问前: '',
|
||||
encoding: 'utf-8',
|
||||
search_encoding: '',
|
||||
图片来源: '',
|
||||
图片替换: '',
|
||||
play_json: [],
|
||||
pagecount: {},
|
||||
tab_remove: [],
|
||||
tab_order: [],
|
||||
tab_rename: {},
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
var rule = {
|
||||
类型: '影视', //影视|听书|漫画|小说
|
||||
title: '短剧',
|
||||
host: 'https://ai-img.ycubbs.cn/',
|
||||
homeUrl: '/api/duanju/list',
|
||||
url: '/api/duanju/list',
|
||||
searchUrl: 'https://api.kuleu.com/api/action?text=**',
|
||||
searchable: 1,
|
||||
quickSearch: 0,
|
||||
filterable: 0,
|
||||
headers: {
|
||||
'User-Agent': 'MOBILE_UA',
|
||||
},
|
||||
hikerListCol: "text_1",
|
||||
hikerClassListCol: "text_1",
|
||||
timeout: 5000,
|
||||
class_name: '',
|
||||
class_url: '',
|
||||
play_parse: true,
|
||||
lazy: $js.toString(() => {
|
||||
input = "push://" + input;
|
||||
}),
|
||||
double: false,
|
||||
推荐: '*',
|
||||
一级: 'json:data;name;;;url',
|
||||
二级: '*',
|
||||
搜索: 'json:data;name;;;viewlink',
|
||||
}
|
||||
Loaded 100 of 180 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user