xxx
This commit is contained in:
261
0130/道长JS/cat/230ts_book_open.js
Normal file
261
0130/道长JS/cat/230ts_book_open.js
Normal file
@ -0,0 +1,261 @@
|
||||
// 网站搜索异常
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
let key = '爱上你听书网';
|
||||
let HOST = 'https://wap.230ts.net';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
'Referer': HOST
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const html = await request(HOST + '/sort/');
|
||||
const $ = load(html);
|
||||
let filterObj = {};
|
||||
const class_parse = $('dl.pd-class:first > dd > a[href*=sort]');
|
||||
let classes = [];
|
||||
classes = _.map(class_parse, (cls) => {
|
||||
let typeId = cls.attribs['href'];
|
||||
typeId = typeId.replace(/.*?\/sort\/(.*).html/g, '$1');
|
||||
return {
|
||||
type_id: typeId,
|
||||
type_name: cls.children[0].data,
|
||||
};
|
||||
});
|
||||
const sortName = ['玄幻有声', '灵异有声', '综艺娱乐', '长篇评书', '都市有声', '军事有声', '职场有声', '其他有声'];
|
||||
classes = _.sortBy(classes, (c) => {
|
||||
const index = sortName.indexOf(c.type_name);
|
||||
return index === -1 ? sortName.length : index;
|
||||
});
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + '/top/lastupdate/1.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.list-ul > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('p.module-slide-author')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
vod_name: it.attribs.title.replace('有声小说',''),
|
||||
vod_pic: HOST + img.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0) pg = 1;
|
||||
const link = HOST + '/sort/' + tid +'/' + (`${pg}`) + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.book-ol > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('div.book-meta')[0]).text().trim();
|
||||
return {
|
||||
book_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
book_name: it.attribs.title.replace('有声小说',''),
|
||||
book_pic: HOST + img.attribs['data-original'],
|
||||
book_remarks: remarks.replace('佚名(著)','').replace('佚名(播)','').replace('未知(著)','').replace('未知(播)','') || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('div.paging > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(HOST + '/tingshu/' + id);
|
||||
const $ = load(html);
|
||||
const detail = $('div.book-cell:first > div');
|
||||
let vod = {
|
||||
book_id: id,
|
||||
type_name: $('h1:first').text().trim().replace('有声小说',''),
|
||||
// vod_pic: HOST + $('div.myui-content__thumb img:first').attr('data-original'),
|
||||
// vod_content: $('div.ellipsis').text().trim(),
|
||||
book_year: '',
|
||||
book_area: '',
|
||||
book_remarks: '',
|
||||
book_actor: '',
|
||||
book_director: '',
|
||||
book_content: '',
|
||||
};
|
||||
// for (const info of detail) {
|
||||
// const i = $(info).text().trim();
|
||||
// if (i.startsWith('类型:')) {
|
||||
// vod.vod_type = _.map($(info).find('a'), (a) => {
|
||||
// return a.children[0].data;
|
||||
// }).join('/');
|
||||
// } else if (i.startsWith('作者:')) {
|
||||
// vod.vod_director = _.map($(info).find('a'), (a) => {
|
||||
// return a.children[0].data;
|
||||
// }).join('/');
|
||||
// } else if (i.startsWith('演播:')) {
|
||||
// vod.vod_actor = _.map($(info).find('a'), (a) => {
|
||||
// return a.children[0].data;
|
||||
// }).join('/');
|
||||
// } else if (i.startsWith('连载中')) {
|
||||
// vod.vod_remarks = i.substring(3);
|
||||
// }
|
||||
// }
|
||||
const playlist = _.map($('#playlist > ul > li > a'), (it) => {
|
||||
return it.children[0].data + '$' + it.attribs.href.replace(/\/mp3\/(.*).html/g, '$1');
|
||||
}).join("#");
|
||||
vod.volumes = '道长在线';
|
||||
vod.urls = playlist;
|
||||
// vod.vod_play_from = '道长在线';
|
||||
// vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = HOST + '/mp3/' + id + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const iframe = $('body iframe[src*=player]');
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl = iframeHtml.match(/mp3:'(.*?)'/)[1];
|
||||
if (playUrl.indexOf('m4a') >= 0 || playUrl.indexOf('mp3') >= 0 ) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
try {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl = playUrl + '.m4a' + iframeHtml.match(/(\?.*?)'/)[1];
|
||||
if (playUrl.indexOf('http') >= 0) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl2 = iframeHtml.match(/url[\s\S]*?(http.*?)'/)[1];
|
||||
if (playUrl2.indexOf('\?') >= 0) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl2,
|
||||
});
|
||||
} else {
|
||||
const playUrl3 = playUrl2 + playUrl
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl3,
|
||||
});
|
||||
}
|
||||
}
|
||||
} catch (e) {}
|
||||
if (playUrl.indexOf('http') >= 0) {
|
||||
const playUrl = playUrl + '.m4a';
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl4 = iframeHtml.match(/url[\s\S]*?(http.*?)'/)[1];
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl4 + '.m4a',
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
const link = HOST + '/search.html?searchtype=name&searchword=' + wd +'&page=1';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.book-ol > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('div.book-meta')[0]).text().trim();
|
||||
return {
|
||||
book_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
book_name: it.attribs.title.replace('有声小说',''),
|
||||
book_pic: img.attribs['data-original'],
|
||||
book_remarks: remarks.replace('佚名(著)','').replace('佚名(播)','').replace('未知(著)','').replace('未知(播)','') || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
253
0130/道长JS/cat/230ts_open.js
Normal file
253
0130/道长JS/cat/230ts_open.js
Normal file
@ -0,0 +1,253 @@
|
||||
// 网站搜索异常
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
let key = '爱上你听书网';
|
||||
let HOST = 'https://wap.230ts.net';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
'Referer': HOST
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const html = await request(HOST + '/sort/');
|
||||
const $ = load(html);
|
||||
let filterObj = {};
|
||||
const class_parse = $('dl.pd-class:first > dd > a[href*=sort]');
|
||||
let classes = [];
|
||||
classes = _.map(class_parse, (cls) => {
|
||||
let typeId = cls.attribs['href'];
|
||||
typeId = typeId.replace(/.*?\/sort\/(.*).html/g, '$1');
|
||||
return {
|
||||
type_id: typeId,
|
||||
type_name: cls.children[0].data,
|
||||
};
|
||||
});
|
||||
const sortName = ['玄幻有声', '灵异有声', '综艺娱乐', '长篇评书', '都市有声', '军事有声', '职场有声', '其他有声'];
|
||||
classes = _.sortBy(classes, (c) => {
|
||||
const index = sortName.indexOf(c.type_name);
|
||||
return index === -1 ? sortName.length : index;
|
||||
});
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + '/top/lastupdate/1.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.list-ul > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('p.module-slide-author')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
vod_name: it.attribs.title.replace('有声小说',''),
|
||||
vod_pic: HOST + img.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0) pg = 1;
|
||||
const link = HOST + '/sort/' + tid +'/' + (`${pg}`) + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.book-ol > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('div.book-meta')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
vod_name: it.attribs.title.replace('有声小说',''),
|
||||
vod_pic: HOST + img.attribs['data-original'],
|
||||
vod_remarks: remarks.replace('佚名(著)','').replace('佚名(播)','').replace('未知(著)','').replace('未知(播)','') || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('div.paging > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(HOST + '/tingshu/' + id);
|
||||
const $ = load(html);
|
||||
const detail = $('div.book-cell:first > div');
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_name: $('h1:first').text().trim().replace('有声小说',''),
|
||||
vod_pic: HOST + $('div.myui-content__thumb img:first').attr('data-original'),
|
||||
vod_content: $('div.ellipsis').text().trim(),
|
||||
};
|
||||
for (const info of detail) {
|
||||
const i = $(info).text().trim();
|
||||
if (i.startsWith('类型:')) {
|
||||
vod.vod_type = _.map($(info).find('a'), (a) => {
|
||||
return a.children[0].data;
|
||||
}).join('/');
|
||||
} else if (i.startsWith('作者:')) {
|
||||
vod.vod_director = _.map($(info).find('a'), (a) => {
|
||||
return a.children[0].data;
|
||||
}).join('/');
|
||||
} else if (i.startsWith('演播:')) {
|
||||
vod.vod_actor = _.map($(info).find('a'), (a) => {
|
||||
return a.children[0].data;
|
||||
}).join('/');
|
||||
} else if (i.startsWith('连载中')) {
|
||||
vod.vod_remarks = i.substring(3);
|
||||
}
|
||||
}
|
||||
const playlist = _.map($('#playlist > ul > li > a'), (it) => {
|
||||
return it.children[0].data + '$' + it.attribs.href.replace(/\/mp3\/(.*).html/g, '$1');
|
||||
});
|
||||
vod.vod_play_from = '道长在线';
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = HOST + '/mp3/' + id + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const iframe = $('body iframe[src*=player]');
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl = iframeHtml.match(/mp3:'(.*?)'/)[1];
|
||||
if (playUrl.indexOf('m4a') >= 0 || playUrl.indexOf('mp3') >= 0 ) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
try {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl = playUrl + '.m4a' + iframeHtml.match(/(\?.*?)'/)[1];
|
||||
if (playUrl.indexOf('http') >= 0) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl2 = iframeHtml.match(/url[\s\S]*?(http.*?)'/)[1];
|
||||
if (playUrl2.indexOf('\?') >= 0) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl2,
|
||||
});
|
||||
} else {
|
||||
const playUrl3 = playUrl2 + playUrl
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl3,
|
||||
});
|
||||
}
|
||||
}
|
||||
} catch (e) {}
|
||||
if (playUrl.indexOf('http') >= 0) {
|
||||
const playUrl = playUrl + '.m4a';
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
} else {
|
||||
const iframeHtml = (
|
||||
await req(HOST + iframe[0].attribs.src, {
|
||||
headers: {
|
||||
'Referer': link,
|
||||
'User-Agent': MOBILE_UA,
|
||||
},
|
||||
})
|
||||
).content;
|
||||
const playUrl4 = iframeHtml.match(/url[\s\S]*?(http.*?)'/)[1];
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl4 + '.m4a',
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
const link = HOST + '/search.html?searchtype=name&searchword=' + wd +'&page=1';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('ul.book-ol > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('div.book-meta')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/tingshu\/(.*)/g, '$1'),
|
||||
vod_name: it.attribs.title.replace('有声小说',''),
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: remarks.replace('佚名(著)','').replace('佚名(播)','').replace('未知(著)','').replace('未知(播)','') || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/555dy_open.js
Normal file
1
0130/道长JS/cat/555dy_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1C9ARo1NTVkeV9vcGVuLmpzLGFzc2V0czovL2pzL2xpYi9jYXQuanMcX19qc0V2YWxSZXR1cm4MQ3J5cHRvCmRheWpzDGppbmphMgZVcmkCXwZrZXkGdXJsDGRldmljZRR0aW1lT2Zmc2V0DnNpdGVLZXkQc2l0ZVR5cGUGdmVyDnJlcXVlc3QIdGltZQhwYWNrCGluaXQIaG9tZQ5ob21lVm9kEGNhdGVnb3J5DGRldGFpbBJwbGF5Q2FjaGUOcGxheUlkeAhwbGF5DHNlYXJjaA5jaGFyU3RyDnJhbmRTdHIQcmFuZFVVSUQOcmFuZE1BQxRyYW5kRGV2aWNlGmZvcm1hdFBsYXlVcmwKNTU1ZHl6YWJhY2RlZmdoamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSEpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OQJlAnQCYQJyAm4CaQJzDkFuZHJvaWQUVXNlci1BZ2VudDphcHBsaWNhdGlvbi9wcnMuNTVBcHAudjIranNvbgxBY2NlcHQIdW5peBJUaW1lc3RhbXAeeyJwdXJlLW1vZGUiOjB9IFgtQ2xpZW50LVNldHRpbmcceyJkZXZpY2VfaWQiOiIEaWQqIiwgInR5cGUiOjEsImJyYW5kIjoiCmJyYW5kGCIsICJtb2RlbCI6Igptb2RlbGAiLCAic3lzdGVtX3ZlcnNpb24iOjI0LCAic2RrX3ZlcnNpb24iOiIzLjAuOS4xIn0eWC1DbGllbnQtRGV2aWNlIFgtQ2xpZW50LVZlcnNpb24GcmVxDmhlYWRlcnMIZGF0ZQ5jb250ZW50CHRyaW0Uc3RhcnRzV2l0aAJ7CGFlc1gaQUVTL0NCQy9QS0NTNyBlNmQ1ZGU1ZmNjNTFmNTNkIDJmMTNlZWY3ZGZjNmM2MTMIcnNhWBJSU0EvUEtDUzGEBy0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBMDJGL2tQZzVBMk5YNHFaNUpTbnMKK2JqaFZNQ0M2SmJUaVRLcGJnTmdpWFUrS2tvcmc2RGo3NmdTNjhnQjhsbGhiVUtDWGpJZHlnbkhQcnhWSFdmegptemlzcTlQOWF3bVhCa0NrNzRTa2dseDJMS0hhL21Oejlpdmc2WXpRNXBRRlVFV1MwRGZvbUdCWFZ0cXZCbE9YCk1DUnhwNjlvV2FNc25mam5CViswSjd2SGJYelVJa3FCTGRYU05mTTlBZzVxZFJEckpDM0NxQjY1RUozQVJXVnoKWlRUY1hTZE1XOWkzcXpFWlBhd1BOUGU1eVBZYk1aSW9YTGNycXZFWm5SSzFvYWs2Ny9paGY3aXdQSnFkYys2OApaWUVtbWRxd3VuT3ZSZGpxODlmUU1WZWxtcWNSRDlSWWUwOHYreER4RzlDbzl6N2hjWEdUc1VxdU14a2gyOXVOCmF3SURBUUFCCi0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQ5IbWFjTUQ1QDYzNWE1ODBmY2I1ZGM2ZTYwY2FhMzljMzFhN2JkZTQ4DD9wYWNrPSRlbmNvZGVVUklDb21wb25lbnQWJnNpZ25hdHVyZT0Ic2tleQpzdHlwZQpsb2NhbApwYXJzZQ5pc0VtcHR5FnRvTG93ZXJDYXNlQERhbHZpay8yLjEuMCAoTGludXg7IFU7IEFuZHJvaWQgDnJlbGVhc2UEOyAOIEJ1aWxkLw5idWlsZElkAikEdWESc3RyaW5naWZ5cmh0dHBzOi8vbWRpc2sub3NzLWNuLWhhbmd6aG91LmFsaXl1bmNzLmNvbS9kb21haW5fdjIuanNvbhZhcGlfc2VydmljZSR2MS9zZXJ2ZXIvZ2V0X3RpbWUCbwJjAmQCbAJwGnYxL2FwcC9jb25maWcceyJ0aW1lc3RhbXAiOiIEIn0IZGF0YRhtb3ZpZV9zY3JlZW4MZmlsdGVyCHB1c2gOdHlwZV9pZBJ0eXBlX25hbWUIeWVhcgV0Xv1OAnYFaFHokAhhcmVhBTBXOlMFe3yLVwhzb3J0BZJjj14GaG90DmZpbHRlcnMEe30YeyJ0eXBlX2lkIjoiFCIsInNvcnQiOiIOYnlfaGl0cxYiLCJjbGFzcyI6IhQiLCJhcmVhIjoiFCIsInllYXIiOiIUIiwicGFnZSI6Ij4iLCJwYWdlU2l6ZSI6IjIxIiwidGltZXN0YW1wIjoiKHYxL21vdmllL3NjcmVlbi9saXN0CGxpc3QMdm9kX2lkEHZvZF9uYW1lCmNvdmVyDnZvZF9waWMOZHluYW1pYwpsYWJlbBZ2b2RfcmVtYXJrcwhwYWdl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
|
894
0130/道长JS/cat/AppYsV2.js
Normal file
894
0130/道长JS/cat/AppYsV2.js
Normal file
@ -0,0 +1,894 @@
|
||||
import { Crypto, _ } from 'assets://js/lib/cat.js'
|
||||
|
||||
let host = '';
|
||||
let header = {
|
||||
'User-Agent': 'okhttp/3.12.11'
|
||||
};
|
||||
let siteKey = '';
|
||||
let siteType = '';
|
||||
let siteJx = '';
|
||||
|
||||
const urlPattern1 = /api\.php\/.*?\/vod/;
|
||||
const urlPattern2 = /api\.php\/.+?\.vod/;
|
||||
const parsePattern = /\/.+\\?.+=/;
|
||||
const parsePattern1 = /.*(url|v|vid|php\?id)=/;
|
||||
const parsePattern2 = /https?:\/\/[^\/]*/;
|
||||
|
||||
const htmlVideoKeyMatch = [
|
||||
/player=new/,
|
||||
/<div id="video"/,
|
||||
/<div id="[^"]*?player"/,
|
||||
/\/\/视频链接/,
|
||||
/HlsJsPlayer\(/,
|
||||
/<iframe[\s\S]*?src="[^"]+?"/,
|
||||
/<video[\s\S]*?src="[^"]+?"/,
|
||||
];
|
||||
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
host = cfg.ext;
|
||||
if (cfg.ext.hasOwnProperty('host')) { // for custom jx
|
||||
host = cfg.ext.host;
|
||||
siteJx = cfg.ext;
|
||||
}
|
||||
};
|
||||
|
||||
async function request(reqUrl, ua, timeout = 60000) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: ua ? ua : {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'},
|
||||
timeout: timeout,
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
try {
|
||||
let url = getCateUrl(host);
|
||||
|
||||
let jsonArray = null;
|
||||
|
||||
if (url) {
|
||||
const json = await request(url, getHeaders(url));
|
||||
const obj = JSON.parse(json);
|
||||
if (obj.hasOwnProperty("list") && Array.isArray(obj.list)) {
|
||||
jsonArray = obj.list;
|
||||
} else if (
|
||||
obj.hasOwnProperty("data") &&
|
||||
obj.data.hasOwnProperty("list") &&
|
||||
Array.isArray(obj.data.list)
|
||||
) {
|
||||
jsonArray = obj.data.list;
|
||||
} else if (obj.hasOwnProperty("data") && Array.isArray(obj.data)) {
|
||||
jsonArray = obj.data;
|
||||
}
|
||||
} else {
|
||||
// 通过filter列表读分类
|
||||
const filterStr = getFilterTypes(url, null);
|
||||
const classes = filterStr.split("\n")[0].split("+");
|
||||
jsonArray = [];
|
||||
for (let i = 1; i < classes.length; i++) {
|
||||
const kv = classes[i].trim().split("=");
|
||||
if (kv.length < 2) continue;
|
||||
const newCls = {
|
||||
type_name: kv[0].trim(),
|
||||
type_id: kv[1].trim(),
|
||||
};
|
||||
jsonArray.push(newCls);
|
||||
}
|
||||
}
|
||||
|
||||
const result = { class: [] };
|
||||
if (jsonArray != null) {
|
||||
for (let i = 0; i < jsonArray.length; i++) {
|
||||
const jObj = jsonArray[i];
|
||||
const typeName = jObj.type_name;
|
||||
if (isBan(typeName)) continue;
|
||||
const typeId = jObj.type_id;
|
||||
const newCls = {
|
||||
type_id: typeId,
|
||||
type_name: typeName,
|
||||
};
|
||||
const typeExtend = jObj.type_extend;
|
||||
if (filter) {
|
||||
const filterStr = getFilterTypes(url, typeExtend);
|
||||
|
||||
const filters = filterStr.split("\n");
|
||||
const filterArr = [];
|
||||
for (let k = (url) ? 1 : 0; k < filters.length; k++) {
|
||||
const l = filters[k].trim();
|
||||
if (!l) continue;
|
||||
const oneLine = l.split("+");
|
||||
|
||||
let type = oneLine[0].trim();
|
||||
let typeN = type;
|
||||
if (type.includes("筛选")) {
|
||||
type = type.replace(/筛选/g, "");
|
||||
if (type === "class") typeN = "类型";
|
||||
else if (type === "area") typeN = "地区";
|
||||
else if (type === "lang") typeN = "语言";
|
||||
else if (type === "year") typeN = "年份";
|
||||
}
|
||||
const jOne = {
|
||||
key: type,
|
||||
name: typeN,
|
||||
value: [],
|
||||
};
|
||||
for (let j = 1; j < oneLine.length; j++) {
|
||||
const kv = oneLine[j].trim();
|
||||
const sp = kv.indexOf("=");
|
||||
|
||||
if (sp === -1) {
|
||||
if (isBan(kv)) continue;
|
||||
jOne.value.push({ n: kv, v: kv });
|
||||
} else {
|
||||
const n = kv.substring(0, sp);
|
||||
if (isBan(n)) continue;
|
||||
jOne.value.push({
|
||||
n: n.trim(),
|
||||
v: kv.substring(sp + 1).trim(),
|
||||
});
|
||||
}
|
||||
}
|
||||
filterArr.push(jOne);
|
||||
}
|
||||
if (!result.hasOwnProperty("filters")) {
|
||||
result.filters = {};
|
||||
}
|
||||
result.filters[typeId] = filterArr;
|
||||
}
|
||||
result.class.push(newCls);
|
||||
}
|
||||
}
|
||||
|
||||
return JSON.stringify(result);
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
try {
|
||||
const apiUrl = host;
|
||||
let url = getRecommendUrl(apiUrl);
|
||||
let isTV = false;
|
||||
|
||||
if (!url) {
|
||||
url = getCateFilterUrlPrefix(apiUrl) + "movie&page=1&area=&type=&start=";
|
||||
isTV = true;
|
||||
}
|
||||
const json = await request(url, getHeaders(url));
|
||||
const obj = JSON.parse(json);
|
||||
const videos = [];
|
||||
if (isTV) {
|
||||
const jsonArray = obj.data;
|
||||
for (let i = 0; i < jsonArray.length; i++) {
|
||||
const vObj = jsonArray[i];
|
||||
const v = {
|
||||
vod_id: vObj.nextlink,
|
||||
vod_name: vObj.title,
|
||||
vod_pic: vObj.pic,
|
||||
vod_remarks: vObj.state,
|
||||
};
|
||||
videos.push(v);
|
||||
}
|
||||
} else {
|
||||
const arrays = [];
|
||||
findJsonArray(obj, "vlist", arrays);
|
||||
if (arrays.length === 0) {
|
||||
findJsonArray(obj, "vod_list", arrays);
|
||||
}
|
||||
const ids = [];
|
||||
for (const jsonArray of arrays) {
|
||||
for (let i = 0; i < jsonArray.length; i++) {
|
||||
const vObj = jsonArray[i];
|
||||
const vid = vObj.vod_id;
|
||||
if (ids.includes(vid)) continue;
|
||||
ids.push(vid);
|
||||
const v = {
|
||||
vod_id: vid,
|
||||
vod_name: vObj.vod_name,
|
||||
vod_pic: vObj.vod_pic,
|
||||
vod_remarks: vObj.vod_remarks,
|
||||
};
|
||||
videos.push(v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const result = {
|
||||
list: videos,
|
||||
};
|
||||
return JSON.stringify(result);
|
||||
} catch (e) {
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
try {
|
||||
const apiUrl = host;
|
||||
|
||||
let url = getCateFilterUrlPrefix(apiUrl) + tid + getCateFilterUrlSuffix(apiUrl);
|
||||
url = url.replace(/#PN#/g, pg);
|
||||
url = url.replace(/筛选class/g, extend?.class ?? "");
|
||||
url = url.replace(/筛选area/g, extend?.area ?? "");
|
||||
url = url.replace(/筛选lang/g, extend?.lang ?? "");
|
||||
url = url.replace(/筛选year/g, extend?.year ?? "");
|
||||
url = url.replace(/排序/g, extend?.排序 ?? "");
|
||||
|
||||
|
||||
const json = await request(url, getHeaders(url));
|
||||
const obj = JSON.parse(json);
|
||||
|
||||
let totalPg = Infinity;
|
||||
try {
|
||||
if (obj.totalpage !== undefined && typeof obj.totalpage === "number") {
|
||||
totalPg = obj.totalpage;
|
||||
} else if (
|
||||
obj.pagecount !== undefined &&
|
||||
typeof obj.pagecount === "number"
|
||||
) {
|
||||
totalPg = obj.pagecount;
|
||||
} else if (
|
||||
obj.data !== undefined &&
|
||||
typeof obj.data === "object" &&
|
||||
obj.data.total !== undefined &&
|
||||
typeof obj.data.total === "number" &&
|
||||
obj.data.limit !== undefined &&
|
||||
typeof obj.data.limit === "number"
|
||||
) {
|
||||
const limit = obj.data.limit;
|
||||
const total = obj.data.total;
|
||||
totalPg = total % limit === 0 ? total / limit : Math.floor(total / limit) + 1;
|
||||
}
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
|
||||
const jsonArray =
|
||||
obj.list !== undefined
|
||||
? obj.list
|
||||
: obj.data !== undefined && obj.data.list !== undefined
|
||||
? obj.data.list
|
||||
: obj.data;
|
||||
const videos = [];
|
||||
|
||||
if (jsonArray !== undefined) {
|
||||
for (let i = 0; i < jsonArray.length; i++) {
|
||||
const vObj = jsonArray[i];
|
||||
const v = {
|
||||
vod_id: vObj.vod_id !== undefined ? vObj.vod_id : vObj.nextlink,
|
||||
vod_name: vObj.vod_name !== undefined ? vObj.vod_name : vObj.title,
|
||||
vod_pic: vObj.vod_pic !== undefined ? vObj.vod_pic : vObj.pic,
|
||||
vod_remarks: vObj.vod_remarks !== undefined ? vObj.vod_remarks : vObj.state,
|
||||
};
|
||||
videos.push(v);
|
||||
}
|
||||
}
|
||||
|
||||
const result = {
|
||||
page: pg,
|
||||
pagecount: totalPg,
|
||||
limit: 90,
|
||||
total: Infinity,
|
||||
list: videos,
|
||||
};
|
||||
|
||||
return JSON.stringify(result);
|
||||
} catch (e) {
|
||||
SpiderDebug.log(e);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function detail(ids) {
|
||||
try {
|
||||
const apiUrl = host;
|
||||
const url = getPlayUrlPrefix(apiUrl) + ids;
|
||||
|
||||
const json = await request(url, getHeaders(url));
|
||||
const obj = JSON.parse(json);
|
||||
const result = {
|
||||
list: [],
|
||||
};
|
||||
const vod = {};
|
||||
genPlayList(apiUrl, obj, json, vod, ids);
|
||||
result.list.push(vod);
|
||||
return JSON.stringify(result);
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
const parseUrlMap = new Map();
|
||||
|
||||
function genPlayList(URL, object, json, vod, vid) {
|
||||
const playUrls = [];
|
||||
const playFlags = [];
|
||||
|
||||
if (URL.includes("lfytyl.com")) {
|
||||
const data = object.data;
|
||||
vod.vod_id = data.vod_id || vid;
|
||||
vod.vod_name = data.vod_name;
|
||||
vod.vod_pic = data.vod_pic;
|
||||
vod.type_name = data.vod_class || "";
|
||||
vod.vod_year = data.vod_year || "";
|
||||
vod.vod_area = data.vod_area || "";
|
||||
vod.vod_remarks = data.vod_remarks || "";
|
||||
vod.vod_actor = data.vod_actor || "";
|
||||
vod.vod_director = data.vod_director || "";
|
||||
vod.vod_content = data.vod_content || "";
|
||||
|
||||
vod.vod_play_from = data.vod_play_from;
|
||||
vod.vod_play_url = data.vod_play_url;
|
||||
return;
|
||||
}
|
||||
|
||||
if (URL.includes("api.php/app")) {
|
||||
const data = object.data;
|
||||
vod.vod_id = data.vod_id || vid;
|
||||
vod.vod_name = data.vod_name;
|
||||
vod.vod_pic = data.vod_pic;
|
||||
vod.type_name = data.vod_class || "";
|
||||
vod.vod_year = data.vod_year || "";
|
||||
vod.vod_area = data.vod_area || "";
|
||||
vod.vod_remarks = data.vod_remarks || "";
|
||||
vod.vod_actor = data.vod_actor || "";
|
||||
vod.vod_director = data.vod_director || "";
|
||||
vod.vod_content = data.vod_content || "";
|
||||
|
||||
const vodUrlWithPlayer = data.vod_url_with_player;
|
||||
for (let i = 0; i < vodUrlWithPlayer.length; i++) {
|
||||
const from = vodUrlWithPlayer[i];
|
||||
let flag = from.code.trim();
|
||||
if (flag === "") flag = from.name.trim();
|
||||
playFlags.push(flag);
|
||||
playUrls.push(from.url);
|
||||
|
||||
let purl = from.parse_api;
|
||||
const parseUrls = parseUrlMap.get(flag) || [];
|
||||
if (purl && !parseUrls.includes(purl)) {
|
||||
parseUrls.push(purl);
|
||||
}
|
||||
parseUrlMap.set(flag, parseUrls);
|
||||
|
||||
}
|
||||
} else if (URL.includes("xgapp")) {
|
||||
const data = object.data.vod_info;
|
||||
vod.vod_id = data.vod_id || vid;
|
||||
vod.vod_name = data.vod_name;
|
||||
vod.vod_pic = data.vod_pic;
|
||||
vod.type_name = data.vod_class || "";
|
||||
vod.vod_year = data.vod_year || "";
|
||||
vod.vod_area = data.vod_area || "";
|
||||
vod.vod_remarks = data.vod_remarks || "";
|
||||
vod.vod_actor = data.vod_actor || "";
|
||||
vod.vod_director = data.vod_director || "";
|
||||
vod.vod_content = data.vod_content || "";
|
||||
|
||||
const vodUrlWithPlayer = data.vod_url_with_player;
|
||||
for (let i = 0; i < vodUrlWithPlayer.length; i++) {
|
||||
const from = vodUrlWithPlayer[i];
|
||||
let flag = from.code.trim();
|
||||
if (flag === "") flag = from.name.trim();
|
||||
playFlags.push(flag);
|
||||
playUrls.push(from.url);
|
||||
|
||||
const purl = from.parse_api.trim();
|
||||
const parseUrls = parseUrlMap.get(flag) || [];
|
||||
if (purl && !parseUrls.includes(purl)) {
|
||||
parseUrls.push(purl);
|
||||
}
|
||||
parseUrlMap.set(flag, parseUrls);
|
||||
}
|
||||
} else if (URL.includes(".vod")) {
|
||||
const data = object.data;
|
||||
vod.vod_id = data.vod_id || vid;
|
||||
vod.vod_name = data.vod_name;
|
||||
vod.vod_pic = data.vod_pic;
|
||||
vod.type_name = data.vod_class || "";
|
||||
vod.vod_year = data.vod_year || "";
|
||||
vod.vod_area = data.vod_area || "";
|
||||
vod.vod_remarks = data.vod_remarks || "";
|
||||
vod.vod_actor = data.vod_actor || "";
|
||||
vod.vod_director = data.vod_director || "";
|
||||
vod.vod_content = data.vod_content || "";
|
||||
|
||||
const vodUrlWithPlayer = data.vod_play_list;
|
||||
for (let i = 0; i < vodUrlWithPlayer.length; i++) {
|
||||
const from = vodUrlWithPlayer[i];
|
||||
let flag = from.player_info.from.trim();
|
||||
if (flag === "") flag = from.player_info.show.trim();
|
||||
playFlags.push(flag);
|
||||
playUrls.push(from.url);
|
||||
|
||||
try {
|
||||
const parses = [];
|
||||
const parse1 = from.player_info.parse.split(",");
|
||||
const parse2 = from.player_info.parse2.split(",");
|
||||
parses.push(...parse1, ...parse2);
|
||||
const parseUrls = parseUrlMap.get(flag) || [];
|
||||
for (const purl of parses) {
|
||||
if (purl.includes("http")) {
|
||||
const match = purl.match(parsePattern1);
|
||||
if (match) {
|
||||
parseUrls.push(match[0]);
|
||||
}
|
||||
} else if (purl.includes("//")) {
|
||||
const match = purl.match(parsePattern1);
|
||||
if (match) {
|
||||
parseUrls.push("http:" + match[0]);
|
||||
}
|
||||
} else {
|
||||
const urlMatch = URL.match(parsePattern2);
|
||||
if (urlMatch) {
|
||||
const match = URL.match(parsePattern1);
|
||||
if (match) {
|
||||
parseUrls.push(urlMatch[0] + match[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (purl.includes("..")) purl = purl.replace(/\.\./g, ".").trim();
|
||||
|
||||
if (purl && !parseUrls.includes(purl)) {
|
||||
parseUrls.push(purl);
|
||||
}
|
||||
}
|
||||
parseUrlMap.set(flag, parseUrls);
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
}
|
||||
} else if (URLPattern1.matcher(URL).find()) {
|
||||
// Same implementation as the previous cases
|
||||
}
|
||||
|
||||
vod.vod_play_from = playFlags.join("$$$");
|
||||
vod.vod_play_url = playUrls.join("$$$");
|
||||
}
|
||||
|
||||
|
||||
async function play(flag, id, vipFlags) {
|
||||
try {
|
||||
// let parseUrls = parseUrlMap.get(flag);
|
||||
let parseUrls = siteJx[flag]; // custom sitejx
|
||||
if (!parseUrls) {
|
||||
if (siteJx.hasOwnProperty('*')) { // all jx
|
||||
parseUrls = siteJx['*'];
|
||||
} else {
|
||||
parseUrls = [];
|
||||
}
|
||||
}
|
||||
|
||||
if (parseUrls.length > 0) {
|
||||
const result = await getFinalVideo(flag, parseUrls, id);
|
||||
if (result !== null) {
|
||||
return JSON.stringify(result);
|
||||
}
|
||||
}
|
||||
|
||||
if (isVideo(id)) {
|
||||
const result = {
|
||||
parse: 0,
|
||||
playUrl: "",
|
||||
url: id
|
||||
};
|
||||
return JSON.stringify(result);
|
||||
} else {
|
||||
const result = {
|
||||
parse: 1,
|
||||
jx: "1",
|
||||
url: id
|
||||
};
|
||||
return JSON.stringify(result);
|
||||
}
|
||||
} catch (e) {
|
||||
// Handle any error here
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function search(key, quick) {
|
||||
try {
|
||||
const apiUrl = host;
|
||||
const url = getSearchUrl(apiUrl, encodeURIComponent(key));
|
||||
const json = await request(url, getHeaders(url));
|
||||
const obj = JSON.parse(json);
|
||||
let jsonArray = null;
|
||||
const videos = [];
|
||||
|
||||
if (obj.list instanceof Array) {
|
||||
jsonArray = obj.list;
|
||||
} else if (obj.data instanceof Object && obj.data.list instanceof Array) {
|
||||
jsonArray = obj.data.list;
|
||||
} else if (obj.data instanceof Array) {
|
||||
jsonArray = obj.data;
|
||||
}
|
||||
|
||||
if (jsonArray !== null) {
|
||||
for (const vObj of jsonArray) {
|
||||
if (vObj.vod_id) {
|
||||
const v = {
|
||||
vod_id: vObj.vod_id,
|
||||
vod_name: vObj.vod_name,
|
||||
vod_pic: vObj.vod_pic,
|
||||
vod_remarks: vObj.vod_remarks
|
||||
};
|
||||
videos.push(v);
|
||||
} else {
|
||||
const v = {
|
||||
vod_id: vObj.nextlink,
|
||||
vod_name: vObj.title,
|
||||
vod_pic: vObj.pic,
|
||||
vod_remarks: vObj.state
|
||||
};
|
||||
videos.push(v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const result = { list: videos };
|
||||
return JSON.stringify(result);
|
||||
} catch (error) {
|
||||
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
|
||||
async function getFinalVideo(flag, parseUrls, url) {
|
||||
let htmlPlayUrl = "";
|
||||
for (const parseUrl of parseUrls) {
|
||||
if (parseUrl === "" || parseUrl === "null") {
|
||||
continue;
|
||||
}
|
||||
const playUrl = parseUrl + url;
|
||||
const content = await request(playUrl, null, 10000); // 10秒请求,能更好过滤webjx
|
||||
let tryJson = null;
|
||||
try {
|
||||
tryJson = jsonParse(url, content);
|
||||
} catch (error) { }
|
||||
|
||||
if (tryJson !== null && tryJson.hasOwnProperty("url") && tryJson.hasOwnProperty("header")) {
|
||||
tryJson.header = JSON.stringify(tryJson.header);
|
||||
return tryJson;
|
||||
}
|
||||
|
||||
if (content.includes("<html")) {
|
||||
let sniffer = false;
|
||||
for (const p of htmlVideoKeyMatch) {
|
||||
if (p.test(content)) {
|
||||
sniffer = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (sniffer) {
|
||||
htmlPlayUrl = parseUrl;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (htmlPlayUrl !== "") { // 不支持sniffer
|
||||
const result = {
|
||||
parse: 0,
|
||||
playUrl: "",
|
||||
url: url
|
||||
};
|
||||
return JSON.stringify(result);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
function jsonParse(input, json) {
|
||||
try {
|
||||
// 处理解析接口返回的报文,如果返回的报文中包含header信息,就加到返回值中
|
||||
let jsonPlayData = JSON.parse(json);
|
||||
// 处理293的解析结果url在data字段的解析
|
||||
if (jsonPlayData.hasOwnProperty("data") && typeof jsonPlayData.data === "object" && !jsonPlayData.hasOwnProperty("url")) {
|
||||
jsonPlayData = jsonPlayData.data;
|
||||
}
|
||||
|
||||
let url = jsonPlayData.url;
|
||||
|
||||
if (url.startsWith("//")) {
|
||||
url = "https:" + url;
|
||||
}
|
||||
if (!url.trim().startsWith("http")) {
|
||||
return null;
|
||||
}
|
||||
if (url === input) {
|
||||
if (isVip(url) || !isVideoFormat(url)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
if (isBlackVodUrl(input, url)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
let headers = {};
|
||||
if (jsonPlayData.hasOwnProperty("header")) {
|
||||
headers = jsonPlayData.header;
|
||||
} else if (jsonPlayData.hasOwnProperty("Header")) {
|
||||
headers = jsonPlayData.Header;
|
||||
} else if (jsonPlayData.hasOwnProperty("headers")) {
|
||||
headers = jsonPlayData.headers;
|
||||
} else if (jsonPlayData.hasOwnProperty("Headers")) {
|
||||
headers = jsonPlayData.Headers;
|
||||
}
|
||||
|
||||
let ua = "";
|
||||
if (jsonPlayData.hasOwnProperty("user-agent")) {
|
||||
ua = jsonPlayData["user-agent"];
|
||||
} else if (jsonPlayData.hasOwnProperty("User-Agent")) {
|
||||
ua = jsonPlayData["User-Agent"];
|
||||
}
|
||||
if (ua.trim().length > 0) {
|
||||
headers["User-Agent"] = " " + ua;
|
||||
}
|
||||
|
||||
let referer = "";
|
||||
if (jsonPlayData.hasOwnProperty("referer")) {
|
||||
referer = jsonPlayData.referer;
|
||||
} else if (jsonPlayData.hasOwnProperty("Referer")) {
|
||||
referer = jsonPlayData.Referer;
|
||||
}
|
||||
if (referer.trim().length > 0) {
|
||||
headers["Referer"] = " " + referer;
|
||||
}
|
||||
|
||||
headers = fixJsonVodHeader(headers, input, url);
|
||||
|
||||
const taskResult = {
|
||||
header: headers,
|
||||
url: url,
|
||||
parse: "0"
|
||||
};
|
||||
|
||||
return taskResult;
|
||||
} catch (error) {
|
||||
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
function isVip(url) {
|
||||
try {
|
||||
let isVip = false;
|
||||
const host = new URL(url).hostname;
|
||||
const vipWebsites = ["iqiyi.com", "v.qq.com", "youku.com", "le.com", "tudou.com", "mgtv.com", "sohu.com", "acfun.cn", "bilibili.com", "baofeng.com", "pptv.com"];
|
||||
for (let b = 0; b < vipWebsites.length; b++) {
|
||||
if (host.includes(vipWebsites[b])) {
|
||||
if (vipWebsites[b] === "iqiyi.com") {
|
||||
// 爱奇艺需要特殊处理
|
||||
if (url.includes("iqiyi.com/a_") || url.includes("iqiyi.com/w_") || url.includes("iqiyi.com/v_")) {
|
||||
isVip = true;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
isVip = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return isVip;
|
||||
} catch (e) {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function isBlackVodUrl(input, url) {
|
||||
return url.includes("973973.xyz") || url.includes(".fit:");
|
||||
}
|
||||
|
||||
|
||||
function fixJsonVodHeader(headers, input, url) {
|
||||
if (headers === null) {
|
||||
headers = {};
|
||||
}
|
||||
|
||||
if (input.includes("www.mgtv.com")) {
|
||||
headers["Referer"] = " ";
|
||||
headers["User-Agent"] = " Mozilla/5.0";
|
||||
} else if (url.includes("titan.mgtv")) {
|
||||
headers["Referer"] = " ";
|
||||
headers["User-Agent"] = " Mozilla/5.0";
|
||||
} else if (input.includes("bilibili")) {
|
||||
headers["Referer"] = " https://www.bilibili.com/";
|
||||
headers["User-Agent"] = " " + Misc.UaWinChrome;
|
||||
}
|
||||
|
||||
return headers;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const snifferMatch = /http((?!http).){26,}?\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)\?.*|http((?!http).){26,}\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)|http((?!http).){26,}\/m3u8\?pt=m3u8.*|http((?!http).)*?default\.ixigua\.com\/.*|http((?!http).)*?cdn-tos[^\?]*|http((?!http).)*?\/obj\/tos[^\?]*|http.*?\/player\/m3u8play\.php\?url=.*|http.*?\/player\/.*?[pP]lay\.php\?url=.*|http.*?\/playlist\/m3u8\/\?vid=.*|http.*?\.php\?type=m3u8&.*|http.*?\/download.aspx\?.*|http.*?\/api\/up_api.php\?.*|https.*?\.66yk\.cn.*|http((?!http).)*?netease\.com\/file\/.*/;
|
||||
|
||||
function isVideoFormat(url) {
|
||||
if (snifferMatch.test(url)) {
|
||||
return !url.includes("cdn-tos") || !url.includes(".js");
|
||||
}
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
function isVideo(url) {
|
||||
if (!url.includes(".mp4") || !url.includes(".m3u8")) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
function UA(url) {
|
||||
if (url.includes(".vod")) {
|
||||
return "okhttp/4.1.0";
|
||||
}
|
||||
}
|
||||
|
||||
function getCateUrl(URL) {
|
||||
if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return URL + "nav?token=";
|
||||
} else if (URL.includes(".vod")) {
|
||||
return URL + "/types";
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
function getPlayUrlPrefix(URL) {
|
||||
if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return URL + "video_detail?id=";
|
||||
} else if (URL.includes(".vod")) {
|
||||
return URL + "/detail?vod_id=";
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
function getRecommendUrl(URL) {
|
||||
if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return URL + "index_video?token=";
|
||||
} else if (URL.includes(".vod")) {
|
||||
return URL + "/vodPhbAll";
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
function getFilterTypes(URL, typeExtend) {
|
||||
let str = "";
|
||||
|
||||
if (typeExtend !== null) {
|
||||
for (let key in typeExtend) {
|
||||
if (key === "class" || key === "area" || key === "lang" || key === "year") {
|
||||
try {
|
||||
|
||||
str += "筛选" + key + "+全部=+" + typeExtend[key].replace(/,/g, "+") + "\n";
|
||||
} catch (e) { }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (URL.includes(".vod")) {
|
||||
str += "\n" + "排序+全部=+最新=time+最热=hits+评分=score";
|
||||
} else if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
// Do nothing, leave the string as it is.
|
||||
} else {
|
||||
str = "分类+全部=+电影=movie+连续剧=tvplay+综艺=tvshow+动漫=comic+4K=movie_4k+体育=tiyu\n筛选class+全部=+喜剧+爱情+恐怖+动作+科幻+剧情+战争+警匪+犯罪+动画+奇幻+武侠+冒险+枪战+恐怖+悬疑+惊悚+经典+青春+文艺+微电影+古装+历史+运动+农村+惊悚+惊悚+伦理+情色+福利+三级+儿童+网络电影\n筛选area+全部=+大陆+香港+台湾+美国+英国+法国+日本+韩国+德国+泰国+印度+西班牙+加拿大+其他\n筛选year+全部=+2023+2022+2021+2020+2019+2018+2017+2016+2015+2014+2013+2012+2011+2010+2009+2008+2007+2006+2005+2004+2003+2002+2001+2000";
|
||||
}
|
||||
|
||||
return str;
|
||||
}
|
||||
|
||||
function getCateFilterUrlSuffix(URL) {
|
||||
if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return "&class=筛选class&area=筛选area&lang=筛选lang&year=筛选year&limit=18&pg=#PN#";
|
||||
} else if (URL.includes(".vod")) {
|
||||
return "&class=筛选class&area=筛选area&lang=筛选lang&year=筛选year&by=排序&limit=18&page=#PN#";
|
||||
} else {
|
||||
return "&page=#PN#&area=筛选area&type=筛选class&start=筛选year";
|
||||
}
|
||||
}
|
||||
|
||||
function getCateFilterUrlPrefix(URL) {
|
||||
if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return URL + "video?tid=";
|
||||
} else if (URL.includes(".vod")) {
|
||||
return URL + "?type=";
|
||||
} else {
|
||||
return URL + "?ac=list&class=";
|
||||
}
|
||||
}
|
||||
|
||||
function isBan(key) {
|
||||
return key === "伦理" || key === "情色" || key === "福利";
|
||||
}
|
||||
|
||||
function getSearchUrl(URL, KEY) {
|
||||
if (URL.includes(".vod")) {
|
||||
return URL + "?wd=" + KEY + "&page=";
|
||||
} else if (URL.includes("api.php/app") || URL.includes("xgapp")) {
|
||||
return URL + "search?text=" + KEY + "&pg=";
|
||||
} else if (urlPattern1.test(URL)) {
|
||||
return URL + "?ac=list&zm=" + KEY + "&page=";
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
function findJsonArray(obj, match, result) {
|
||||
Object.keys(obj).forEach((k) => {
|
||||
try {
|
||||
const o = obj[k];
|
||||
if (k === match && Array.isArray(o)) {
|
||||
result.push(o);
|
||||
}
|
||||
if (typeof o === "object" && o !== null) {
|
||||
if (Array.isArray(o)) {
|
||||
o.forEach((item) => {
|
||||
if (typeof item === "object" && item !== null) {
|
||||
findJsonArray(item, match, result);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
findJsonArray(o, match, result);
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function jsonArr2Str(array) {
|
||||
const strings = [];
|
||||
for (let i = 0; i < array.length; i++) {
|
||||
try {
|
||||
strings.push(array[i]);
|
||||
} catch (e) {
|
||||
}
|
||||
}
|
||||
return strings.join(",");
|
||||
}
|
||||
|
||||
function getHeaders(URL) {
|
||||
const headers = {};
|
||||
headers["User-Agent"] = UA(URL);
|
||||
return headers;
|
||||
}
|
||||
|
||||
function isJsonString(str) {
|
||||
try {
|
||||
JSON.parse(str);
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
||||
|
678
0130/道长JS/cat/Bili.js
Normal file
678
0130/道长JS/cat/Bili.js
Normal file
@ -0,0 +1,678 @@
|
||||
import { Crypto, jinja2, _ } from 'assets://js/lib/cat.js';
|
||||
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
let cookie = '';
|
||||
let login = '';
|
||||
let vip = false;
|
||||
let extendObj = {};
|
||||
let bili_jct = '';
|
||||
let vod_audio_id = {
|
||||
30280: 192000,
|
||||
30232: 132000,
|
||||
30216: 64000,
|
||||
};
|
||||
|
||||
let vod_codec = {
|
||||
// 13: 'AV1',
|
||||
12: 'HEVC',
|
||||
7: 'AVC',
|
||||
};
|
||||
|
||||
const UA = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36';
|
||||
|
||||
async function request(reqUrl, ua, buffer) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: ua ? ua : { 'User-Agent': UA },
|
||||
timeout: 60000,
|
||||
buffer: buffer ? 1 : 0,
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function post(reqUrl, postData, ua, posttype) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'post',
|
||||
headers: ua ? ua : { 'User-Agent': UA },
|
||||
data: postData,
|
||||
timeout: 60000,
|
||||
postType: posttype,
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
function getHeaders() {
|
||||
const headers = {
|
||||
'User-Agent': UA,
|
||||
};
|
||||
if (!_.isEmpty(cookie)) {
|
||||
headers.cookie = cookie;
|
||||
}
|
||||
return headers;
|
||||
}
|
||||
|
||||
async function getCookie() {
|
||||
let result = await req('https://www.bilibili.com', {
|
||||
method: 'get',
|
||||
headers: { 'User-Agent': UA },
|
||||
timeout: 60000,
|
||||
});
|
||||
const setCookieHeaders = result.headers['set-cookie'];
|
||||
cookie = setCookieHeaders.map((kk) => kk.split(';')[0] + ';').join('');
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
let extend = cfg.ext;
|
||||
|
||||
if (typeof cfg.ext == 'string') {
|
||||
if (cfg.ext.indexOf('http') == 0) {
|
||||
const res = await req(cfg.ext, getHeaders());
|
||||
cfg.ext = JSON.parse(res.content);
|
||||
} else {
|
||||
cfg.ext = {type: cfg.ext};
|
||||
}
|
||||
extend = cfg.ext;
|
||||
}
|
||||
|
||||
if (cfg.ext.hasOwnProperty('categories'))
|
||||
extend = cfg.ext.categories;
|
||||
else if (cfg.ext.hasOwnProperty('type'))
|
||||
extend = cfg.ext.type;
|
||||
|
||||
if (extend == '')
|
||||
extend = '抖音热歌$$$经典无损音乐合集$$$超清MV$$$Java$$$Android';
|
||||
|
||||
|
||||
if (cfg.ext.hasOwnProperty('cookie')) cookie = cfg.ext.cookie;
|
||||
|
||||
// 获取csrf
|
||||
const cookies = cookie.split(';');
|
||||
cookies.forEach(cookie => {
|
||||
if (cookie.includes('bili_jct')) {
|
||||
bili_jct = cookie.split('=')[1];
|
||||
}
|
||||
});
|
||||
|
||||
if (_.isEmpty(cookie)) await getCookie();
|
||||
let result = JSON.parse(await request('https://api.bilibili.com/x/web-interface/nav', getHeaders()));
|
||||
login = result.data.isLogin;
|
||||
vip = result.data.vipStatus;
|
||||
const ext = extend.split('$$$');
|
||||
console.log("ext: " + ext);
|
||||
const jsonData = [
|
||||
{
|
||||
key: 'order',
|
||||
name: '排序',
|
||||
value: [
|
||||
{ n: '综合排序', v: '0' },
|
||||
{ n: '最多点击', v: 'click' },
|
||||
{ n: '最新发布', v: 'pubdate' },
|
||||
{ n: '最多弹幕', v: 'dm' },
|
||||
{ n: '最多收藏', v: 'stow' },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'duration',
|
||||
name: '时长',
|
||||
value: [
|
||||
{ n: '全部时长', v: '0' },
|
||||
{ n: '60分钟以上', v: '4' },
|
||||
{ n: '30~60分钟', v: '3' },
|
||||
{ n: '10~30分钟', v: '2' },
|
||||
{ n: '10分钟以下', v: '1' },
|
||||
],
|
||||
},
|
||||
];
|
||||
const newarr = [];
|
||||
const d = {};
|
||||
const sc = {
|
||||
type_name: "首页",
|
||||
type_id: "首页",
|
||||
land: 1,
|
||||
ratio: 1.33,
|
||||
}
|
||||
// newarr.push(sc);
|
||||
for (const kk of ext) {
|
||||
const cate = kk.split('#');
|
||||
const value = [];
|
||||
for (const item of cate) {
|
||||
const kkk = item.indexOf('$') > 0 ? item : item + "$" + item;
|
||||
const val = kkk.split('$');
|
||||
value.push({n: val[0], v: val[1]});
|
||||
}
|
||||
const c = {
|
||||
type_name: value[0].n,
|
||||
type_id: value[0].v,
|
||||
land: 1,
|
||||
ratio: 1.33,
|
||||
type_flag: '0-0-H'
|
||||
};
|
||||
newarr.push(c);
|
||||
const filter = [];
|
||||
if (value.length > 1) {
|
||||
filter.push(
|
||||
{
|
||||
key: 'tid',
|
||||
name: '分类',
|
||||
value: value
|
||||
}
|
||||
);
|
||||
}
|
||||
filter.push(jsonData[0]);
|
||||
filter.push(jsonData[1]);
|
||||
d[value[0].v] = filter;
|
||||
}
|
||||
if (!_.isEmpty(bili_jct)) {
|
||||
const hc = {
|
||||
type_name: "历史记录",
|
||||
type_id: "历史记录",
|
||||
land: 1,
|
||||
ratio: 1.33,
|
||||
}
|
||||
newarr.push(hc);
|
||||
}
|
||||
extendObj = {
|
||||
classes: newarr,
|
||||
filter: d,
|
||||
};
|
||||
}
|
||||
|
||||
function home(filter) {
|
||||
try {
|
||||
const jSONObject = {
|
||||
class: extendObj.classes,
|
||||
type_flag: '0-0-H'
|
||||
};
|
||||
if (filter) {
|
||||
jSONObject.filters = extendObj.filter;
|
||||
}
|
||||
return JSON.stringify(jSONObject);
|
||||
} catch (e) {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
return category('白噪音', 1, false, {});
|
||||
// try {
|
||||
// const list = [];
|
||||
// const url = 'https://api.bilibili.com/x/web-interface/index/top/rcmd?ps=14&fresh_idx=1&fresh_idx_1h=1';
|
||||
|
||||
// const response = await request(url, getHeaders());
|
||||
// const responseData = JSON.parse(response);
|
||||
// const vods = responseData.data.item;
|
||||
|
||||
// for (const item of vods) {
|
||||
// const vod = {};
|
||||
// let imageUrl = item.pic;
|
||||
// if (imageUrl.startsWith('//')) {
|
||||
// imageUrl = 'https:' + imageUrl;
|
||||
// }
|
||||
// let cd = getFullTime(item.duration);
|
||||
|
||||
// vod.vod_id = item.bvid;
|
||||
// vod.vod_name = removeTags(item.title);
|
||||
// vod.vod_pic = imageUrl;
|
||||
// vod.vod_remarks = cd;
|
||||
// vod.style = {
|
||||
// type: 'rect',
|
||||
// ratio: 1.33,
|
||||
// },
|
||||
// list.push(vod);
|
||||
// }
|
||||
|
||||
// const result = { list: list };
|
||||
// return JSON.stringify(result);
|
||||
// } catch (e) { }
|
||||
}
|
||||
|
||||
async function category(tid, page, filter, ext) {
|
||||
if (page < 1) page = 1;
|
||||
try {
|
||||
if (Object.keys(ext).length > 0 && ext.hasOwnProperty('tid') && ext['tid'].length > 0) {
|
||||
tid = ext['tid'];
|
||||
}
|
||||
let url = '';
|
||||
url = `https://api.bilibili.com/x/web-interface/search/type?search_type=video&keyword=${encodeURIComponent(tid)}`;
|
||||
|
||||
if (Object.keys(ext).length > 0) {
|
||||
for (const k in ext) {
|
||||
if (k == 'tid') {
|
||||
continue;
|
||||
}
|
||||
url += `&${encodeURIComponent(k)}=${encodeURIComponent(ext[k])}`;
|
||||
}
|
||||
}
|
||||
|
||||
url += `&page=${encodeURIComponent(page)}`;
|
||||
|
||||
if (tid == "首页") {
|
||||
url = "https://api.bilibili.com/x/web-interface/index/top/rcmd?ps=14&fresh_idx=" + page + "&fresh_idx_1h=" + page;
|
||||
} else if (tid == "历史记录") {
|
||||
url = "https://api.bilibili.com/x/v2/history?pn=" + page;
|
||||
}
|
||||
|
||||
const data = JSON.parse(await request(url, getHeaders())).data;
|
||||
let items = data.result;
|
||||
if (tid == "首页") {
|
||||
items = data.item;
|
||||
} else if (tid == "历史记录") {
|
||||
items = data;
|
||||
}
|
||||
|
||||
const videos = [];
|
||||
for (const item of items) {
|
||||
const video = {};
|
||||
let pic = item.pic;
|
||||
if (pic.startsWith('//')) {
|
||||
pic = 'https:' + pic;
|
||||
}
|
||||
let cd = getFullTime(item.duration);
|
||||
|
||||
video.vod_remarks = cd;
|
||||
video.vod_id = item.bvid;
|
||||
video.vod_name = removeTags(item.title);
|
||||
video.vod_pic = pic;
|
||||
|
||||
video.style = {
|
||||
type: 'rect',
|
||||
ratio: 1.33,
|
||||
},
|
||||
videos.push(video);
|
||||
}
|
||||
|
||||
const result = {
|
||||
page: page,
|
||||
pagecount: data.numPages ?? (page + 1),
|
||||
limit: videos.length,
|
||||
total: videos.length * (page + 1),
|
||||
list: videos,
|
||||
};
|
||||
|
||||
return JSON.stringify(result);
|
||||
} catch (e) { }
|
||||
return null;
|
||||
}
|
||||
|
||||
async function detail(ids) {
|
||||
try {
|
||||
const bvid = ids;
|
||||
const detailUrl = `https://api.bilibili.com/x/web-interface/view?bvid=${bvid}`;
|
||||
|
||||
const detailData = JSON.parse(await request(detailUrl, getHeaders())).data;
|
||||
// 记录历史
|
||||
if (!_.isEmpty(bili_jct)) {
|
||||
const historyReport = 'https://api.bilibili.com/x/v2/history/report';
|
||||
let dataPost = {
|
||||
aid: detailData.aid,
|
||||
cid: detailData.cid,
|
||||
csrf: bili_jct,
|
||||
}
|
||||
await post(historyReport, dataPost, getHeaders(), 'form');
|
||||
}
|
||||
let cd = getFullTime(detailData.duration);
|
||||
const aid = detailData.aid;
|
||||
const video = {
|
||||
vod_id: bvid,
|
||||
vod_name: detailData.title,
|
||||
vod_pic: detailData.pic,
|
||||
type_name: detailData.tname,
|
||||
vod_year: '',
|
||||
vod_area: '',
|
||||
vod_remarks: cd,
|
||||
vod_actor: '',
|
||||
vod_director: '',
|
||||
vod_content: detailData.desc,
|
||||
};
|
||||
|
||||
const playurldata = 'https://api.bilibili.com/x/player/playurl?avid=' + aid + '&cid=' + detailData.cid + '&qn=127&fnval=4048&fourk=1';
|
||||
const playurldatas = JSON.parse(await request(playurldata, getHeaders()));
|
||||
|
||||
const playurldatalist = playurldatas.data;
|
||||
const accept_quality = playurldatalist.accept_quality;
|
||||
const accept_description = playurldatalist.accept_description;
|
||||
const qualitylist = [];
|
||||
const descriptionList = [];
|
||||
|
||||
for (let i = 0; i < accept_quality.length; i++) {
|
||||
if (!vip) {
|
||||
if (!login) {
|
||||
if (accept_quality[i] > 32) continue;
|
||||
} else {
|
||||
if (accept_quality[i] > 80) continue;
|
||||
}
|
||||
}
|
||||
descriptionList.push(base64Encode(accept_description[i]));
|
||||
qualitylist.push(accept_quality[i]);
|
||||
}
|
||||
|
||||
let treeMap = {};
|
||||
const jSONArray = detailData.pages;
|
||||
let playList = [];
|
||||
for (let j = 0; j < jSONArray.length; j++) {
|
||||
const jSONObject6 = jSONArray[j];
|
||||
const cid = jSONObject6.cid;
|
||||
const title = jSONObject6.part;
|
||||
const duration = jSONObject6.duration;
|
||||
const playUrl = '[' + secondsToTime(duration) + '] ' + title + '$' + aid + '+' + cid + '+' + qualitylist.join(':') + '+' + descriptionList.join(':');
|
||||
playList.push(playUrl);
|
||||
}
|
||||
treeMap['dash'] = playList.join('#');
|
||||
treeMap['mp4'] = playList.join('#');
|
||||
|
||||
const relatedUrl = 'https://api.bilibili.com/x/web-interface/archive/related?bvid=' + bvid;
|
||||
const relatedData = JSON.parse(await request(relatedUrl, getHeaders())).data;
|
||||
playList = [];
|
||||
for (let j = 0; j < relatedData.length; j++) {
|
||||
const jSONObject6 = relatedData[j];
|
||||
const cid = jSONObject6.cid;
|
||||
const title = jSONObject6.title;
|
||||
const aaid = jSONObject6.aid;
|
||||
const playUrl = title + '$' + aaid + '+' + cid + '+' + qualitylist.join(':') + '+' + descriptionList.join(':');
|
||||
playList.push(playUrl);
|
||||
}
|
||||
treeMap['相关'] = playList.join('#');
|
||||
|
||||
video.vod_play_from = Object.keys(treeMap).join("$$$");
|
||||
video.vod_play_url = Object.values(treeMap).join("$$$");
|
||||
|
||||
// console.log("====>video: " + JSON.stringify(video));
|
||||
|
||||
const list = [video];
|
||||
const result = { list };
|
||||
return JSON.stringify(result);
|
||||
} catch (e) { }
|
||||
return null;
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
try {
|
||||
const playHeaders = { Referer: 'https://www.bilibili.com', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36' };
|
||||
const ids = id.split('+');
|
||||
const aid = ids[0];
|
||||
const cid = ids[1];
|
||||
const qualityIds = ids[2].split(':');
|
||||
const qualityName = ids[3].split(':');
|
||||
if (flag == 'dash' || flag == '相关') {
|
||||
// dash mpd 代理
|
||||
const js2Base = await js2Proxy(true, siteType, siteKey, 'dash/', {});
|
||||
let urls = [];
|
||||
for (let i = 0; i < qualityIds.length; i++) {
|
||||
urls.push(base64Decode(qualityName[i]), js2Base + base64Encode(aid + '+' + cid + '+' + qualityIds[i]));
|
||||
}
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: urls,
|
||||
header: playHeaders,
|
||||
});
|
||||
} else if (flag == 'mp4') {
|
||||
// 直链
|
||||
let urls = [];
|
||||
for (let i = 0; i < qualityIds.length; i++) {
|
||||
const url = `https://api.bilibili.com/x/player/playurl?avid=${aid}&cid=${cid}&qn=${qualityIds[i]}&fourk=1`;
|
||||
const resp = JSON.parse(await request(url, getHeaders()));
|
||||
const data = resp.data;
|
||||
if (data.quality != qualityIds[i]) continue;
|
||||
let durl = data.durl[0].url;
|
||||
urls.push(base64Decode(qualityName[i]), durl);
|
||||
}
|
||||
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: urls,
|
||||
header: playHeaders,
|
||||
});
|
||||
} else {
|
||||
// 音频外挂
|
||||
let urls = [];
|
||||
let audios = [];
|
||||
for (let i = 0; i < qualityIds.length; i++) {
|
||||
const url = `https://api.bilibili.com/x/player/playurl?avid=${aid}&cid=${cid}&qn=${qualityIds[i]}&fnval=4048&fourk=1`;
|
||||
let resp = JSON.parse(await request(url, getHeaders()));
|
||||
const dash = resp.data.dash;
|
||||
const video = dash.video;
|
||||
const audio = dash.audio;
|
||||
for (let j = 0; j < video.length; j++) {
|
||||
const dashjson = video[j];
|
||||
if (dashjson.id == qualityIds[i]) {
|
||||
for (const key in vod_codec) {
|
||||
if (dashjson.codecid == key) {
|
||||
urls.push(base64Decode(qualityName[i]) + ' ' + vod_codec[key], dashjson.baseUrl);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (audios.length == 0) {
|
||||
for (let j = 0; j < audio.length; j++) {
|
||||
const dashjson = audio[j];
|
||||
for (const key in vod_audio_id) {
|
||||
if (dashjson.id == key) {
|
||||
audios.push({
|
||||
title: _.floor(parseInt(vod_audio_id[key]) / 1024) + 'Kbps',
|
||||
bit: vod_audio_id[key],
|
||||
url: dashjson.baseUrl,
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
audios = _.sortBy(audios, 'bit');
|
||||
}
|
||||
}
|
||||
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: urls,
|
||||
extra: {
|
||||
audio: audios,
|
||||
},
|
||||
header: playHeaders,
|
||||
});
|
||||
}
|
||||
} catch (e) { }
|
||||
return null;
|
||||
}
|
||||
|
||||
async function search(key, quick, pg) {
|
||||
let page = pg || 1;
|
||||
if (page == 0) page = 1;
|
||||
try {
|
||||
const ext = {
|
||||
duration: '0',
|
||||
};
|
||||
let resp = JSON.parse(await category(key, page, true, ext));
|
||||
const catVideos = resp.list;
|
||||
const pageCount = resp.pagecount;
|
||||
const videos = [];
|
||||
for (let i = 0; i < catVideos.length; ++i) {
|
||||
videos.push(catVideos[i]);
|
||||
}
|
||||
const result = {
|
||||
page: page,
|
||||
pagecount: pageCount,
|
||||
land: 1,
|
||||
ratio: 1.33,
|
||||
list: videos,
|
||||
};
|
||||
return JSON.stringify(result);
|
||||
} catch (e) { }
|
||||
return null;
|
||||
}
|
||||
|
||||
async function proxy(segments, headers) {
|
||||
let what = segments[0];
|
||||
let url = base64Decode(segments[1]);
|
||||
if (what == 'dash') {
|
||||
const ids = url.split('+');
|
||||
const aid = ids[0];
|
||||
const cid = ids[1];
|
||||
const str5 = ids[2];
|
||||
const urls = `https://api.bilibili.com/x/player/playurl?avid=${aid}&cid=${cid}&qn=${str5}&fnval=4048&fourk=1`;
|
||||
let videoList = '';
|
||||
let audioList = '';
|
||||
|
||||
let resp = JSON.parse(await request(urls, getHeaders()));
|
||||
const dash = resp.data.dash;
|
||||
const video = dash.video;
|
||||
const audio = dash.audio;
|
||||
|
||||
for (let i = 0; i < video.length; i++) {
|
||||
// if (i > 0) continue; // 只取一个
|
||||
const dashjson = video[i];
|
||||
if (dashjson.id == str5) {
|
||||
videoList += getDashMedia(dashjson);
|
||||
}
|
||||
}
|
||||
|
||||
for (let i = 0; i < audio.length; i++) {
|
||||
// if (i > 0) continue;
|
||||
const ajson = audio[i];
|
||||
for (const key in vod_audio_id) {
|
||||
if (ajson.id == key) {
|
||||
audioList += getDashMedia(ajson);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let mpd = getDash(resp, videoList, audioList);
|
||||
|
||||
return JSON.stringify({
|
||||
code: 200,
|
||||
content: mpd,
|
||||
headers: {
|
||||
'Content-Type': 'application/dash+xml',
|
||||
},
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
code: 500,
|
||||
content: '',
|
||||
});
|
||||
}
|
||||
|
||||
function getDashMedia(dash) {
|
||||
try {
|
||||
let qnid = dash.id;
|
||||
const codecid = dash.codecid;
|
||||
const media_codecs = dash.codecs;
|
||||
const media_bandwidth = dash.bandwidth;
|
||||
const media_startWithSAP = dash.startWithSap;
|
||||
const media_mimeType = dash.mimeType;
|
||||
const media_BaseURL = dash.baseUrl.replace(/&/g, '&');
|
||||
const media_SegmentBase_indexRange = dash.SegmentBase.indexRange;
|
||||
const media_SegmentBase_Initialization = dash.SegmentBase.Initialization;
|
||||
const mediaType = media_mimeType.split('/')[0];
|
||||
let media_type_params = '';
|
||||
|
||||
if (mediaType == 'video') {
|
||||
const media_frameRate = dash.frameRate;
|
||||
const media_sar = dash.sar;
|
||||
const media_width = dash.width;
|
||||
const media_height = dash.height;
|
||||
media_type_params = `height='${media_height}' width='${media_width}' frameRate='${media_frameRate}' sar='${media_sar}'`;
|
||||
} else if (mediaType == 'audio') {
|
||||
for (const key in vod_audio_id) {
|
||||
if (qnid == key) {
|
||||
const audioSamplingRate = vod_audio_id[key];
|
||||
media_type_params = `numChannels='2' sampleRate='${audioSamplingRate}'`;
|
||||
}
|
||||
}
|
||||
}
|
||||
qnid += '_' + codecid;
|
||||
|
||||
return `<AdaptationSet lang="chi">
|
||||
<ContentComponent contentType="${mediaType}"/>
|
||||
<Representation id="${qnid}" bandwidth="${media_bandwidth}" codecs="${media_codecs}" mimeType="${media_mimeType}" ${media_type_params} startWithSAP="${media_startWithSAP}">
|
||||
<BaseURL>${media_BaseURL}</BaseURL>
|
||||
<SegmentBase indexRange="${media_SegmentBase_indexRange}">
|
||||
<Initialization range="${media_SegmentBase_Initialization}"/>
|
||||
</SegmentBase>
|
||||
</Representation>
|
||||
</AdaptationSet>`;
|
||||
} catch (e) {
|
||||
// Handle exceptions here
|
||||
}
|
||||
}
|
||||
|
||||
function getDash(ja, videoList, audioList) {
|
||||
const duration = ja.data.dash.duration;
|
||||
const minBufferTime = ja.data.dash.minBufferTime;
|
||||
return `<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" type="static" mediaPresentationDuration="PT${duration}S" minBufferTime="PT${minBufferTime}S" profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">
|
||||
<Period duration="PT${duration}S" start="PT0S">
|
||||
${videoList}
|
||||
${audioList}
|
||||
</Period>
|
||||
</MPD>`;
|
||||
}
|
||||
|
||||
|
||||
function base64Encode(text) {
|
||||
return Crypto.enc.Base64.stringify(Crypto.enc.Utf8.parse(text));
|
||||
}
|
||||
|
||||
function base64Decode(text) {
|
||||
return Crypto.enc.Utf8.stringify(Crypto.enc.Base64.parse(text));
|
||||
}
|
||||
|
||||
|
||||
|
||||
function removeTags(input) {
|
||||
return input.replace(/<[^>]*>/g, '');
|
||||
}
|
||||
|
||||
function getFullTime(numberSec) {
|
||||
let totalSeconds = '';
|
||||
try {
|
||||
var timeParts = numberSec.split(":");
|
||||
var min = parseInt(timeParts[0]);
|
||||
var sec = parseInt(timeParts[1]);
|
||||
totalSeconds = min * 60 + sec;
|
||||
} catch (e) {
|
||||
totalSeconds = parseInt(numberSec);
|
||||
}
|
||||
if (isNaN(totalSeconds)) {
|
||||
return '无效输入';
|
||||
}
|
||||
if (totalSeconds >= 3600) {
|
||||
const hours = Math.floor(totalSeconds / 3600);
|
||||
const remainingSecondsAfterHours = totalSeconds % 3600;
|
||||
const minutes = Math.floor(remainingSecondsAfterHours / 60);
|
||||
const seconds = remainingSecondsAfterHours % 60;
|
||||
return `${hours}小时 ${minutes}分钟 ${seconds}秒`;
|
||||
} else {
|
||||
const minutes = Math.floor(totalSeconds / 60);
|
||||
const seconds = totalSeconds % 60;
|
||||
return `${minutes}分钟 ${seconds}秒`;
|
||||
}
|
||||
}
|
||||
|
||||
function secondsToTime(seconds) {
|
||||
var hours = Math.floor(seconds / 3600);
|
||||
var minutes = Math.floor((seconds - (hours * 3600)) / 60);
|
||||
var seconds = seconds - (hours * 3600) - (minutes * 60);
|
||||
|
||||
// round seconds
|
||||
seconds = Math.round(seconds * 100) / 100
|
||||
|
||||
var result = (hours < 10 ? "0" + hours : hours);
|
||||
result += ":" + (minutes < 10 ? "0" + minutes : minutes);
|
||||
result += ":" + (seconds < 10 ? "0" + seconds : seconds);
|
||||
return result;
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
proxy: proxy,
|
||||
search: search,
|
||||
};
|
||||
}
|
||||
|
137
0130/道长JS/cat/MyCatBookan.js
Normal file
137
0130/道长JS/cat/MyCatBookan.js
Normal file
@ -0,0 +1,137 @@
|
||||
import { _ } from './lib/cat.js';
|
||||
|
||||
let key = 'bookan';
|
||||
let url = 'https://api.bookan.com.cn';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
return JSON.stringify({
|
||||
class: [
|
||||
{ type_id: '1305', type_name: '少年读物' },
|
||||
{ type_id: '1304', type_name: '儿童文学' },
|
||||
{ type_id: '1320', type_name: '国学经典' },
|
||||
{ type_id: '1306', type_name: '文艺少年' },
|
||||
{ type_id: '1309', type_name: '育儿心经' },
|
||||
{ type_id: '1310', type_name: '心理哲学' },
|
||||
{ type_id: '1307', type_name: '青春励志' },
|
||||
{ type_id: '1312', type_name: '历史小说' },
|
||||
{ type_id: '1303', type_name: '故事会' },
|
||||
{ type_id: '1317', type_name: '音乐戏剧' },
|
||||
{ type_id: '1319', type_name: '相声评书' },
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
pg = pg || 1;
|
||||
if (pg == 0) pg = 1;
|
||||
let content = await request(`${url}/voice/book/list?instance_id=25304&page=${pg}&category_id=${tid}&num=24`);
|
||||
let data = JSON.parse(content).data;
|
||||
let books = [];
|
||||
for (const book of data.list) {
|
||||
books.push({
|
||||
vod_id: book.id,
|
||||
vod_name: book.name,
|
||||
vod_pic: book.cover,
|
||||
vod_remarks: book.extra.author,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
page: data.current_page,
|
||||
pagecount: data.last_page,
|
||||
limit: 24,
|
||||
total: data.total,
|
||||
list: books,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let content = await request(`${url}/voice/album/units?album_id=${id}&page=1&num=200&order=1`);
|
||||
let data = JSON.parse(content).data;
|
||||
console.log(JSON.stringify(data));
|
||||
|
||||
let book = {
|
||||
vod_id: id,
|
||||
type_name: '',
|
||||
vod_year: '',
|
||||
vod_area: '',
|
||||
vod_remarks: '',
|
||||
vod_actor: '',
|
||||
vod_director: '',
|
||||
vod_content: '',
|
||||
};
|
||||
let us = _.map(data.list, function (b) {
|
||||
return formatPlayUrl(b.title) + '$' + b.file;
|
||||
}).join('#');
|
||||
book.vod_play_from = '书卷';
|
||||
book.vod_play_url = us;
|
||||
|
||||
return JSON.stringify({
|
||||
list: [book],
|
||||
});
|
||||
}
|
||||
|
||||
function formatPlayUrl(name) {
|
||||
return name
|
||||
.trim()
|
||||
.replace(/<|>|\.《.*?》/g, '. ')
|
||||
.replace(/\$|#/g, ' ')
|
||||
.trim();
|
||||
}
|
||||
|
||||
async function proxy(segments, headers) {}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
pg = pg || 1;
|
||||
if (pg == 0) pg = 1;
|
||||
let content = await request(`https://es.bookan.com.cn/api/v3/voice/book?instanceId=25304&keyword=${wd}&pageNum=${pg}&limitNum=20`);
|
||||
let data = JSON.parse(content).data;
|
||||
let books = [];
|
||||
for (const book of data.list) {
|
||||
books.push({
|
||||
vod_id: book.id,
|
||||
vod_name: book.name,
|
||||
vod_pic: book.cover,
|
||||
vod_remarks: book.extra.author,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
page: data.current_page,
|
||||
pagecount: data.last_page,
|
||||
limit: 20,
|
||||
total: data.total,
|
||||
list: books,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
162
0130/道长JS/cat/MyDJ0898.js
Normal file
162
0130/道长JS/cat/MyDJ0898.js
Normal file
@ -0,0 +1,162 @@
|
||||
import { load, _ } from "./lib/cat.js";
|
||||
|
||||
let key = "世纪DJ音乐网_book";
|
||||
let HOST = "http://m.dj0898.com";
|
||||
let siteKey = "";
|
||||
let siteType = 0;
|
||||
|
||||
const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36";
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: "get",
|
||||
headers: {
|
||||
"User-Agent": agentSp || MOBILE_UA,
|
||||
Referer: HOST,
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: 1, type_name: "🎧串烧舞曲" }, { type_id: 2, type_name: "🎧外文舞曲" }, { type_id: 3, type_name: "🎧早场暖场" }, { type_id: 4, type_name: "🎧中文舞曲" }, { type_id: 5, type_name: "🎧其他舞曲" }, { type_id: 6, type_name: "🎧国外电音" }, { type_id: 8, type_name: "🎧慢歌连版" }, { type_id: 9, type_name: "🎧酒吧潮歌" }, { type_id: 10, type_name: "🎧中文串烧" }, { type_id: 11, type_name: "🎧外文串烧" }, { type_id: 12, type_name: "🎧中外串烧" }, { type_id: 13, type_name: "🎧车载串烧" }, { type_id: 14, type_name: "🎧越鼓串烧" }, { type_id: 40, type_name: "🎧3D/环绕" }, { type_id: 45, type_name: "🎧口水旋律" }, { type_id: 46, type_name: "🎧精品收藏" }, { type_id: 47, type_name: "🎧开场舞曲" }, { type_id: 48, type_name: "🎧印度舞曲" }, { type_id: 49, type_name: "🎧编排套曲" }, { type_id: 20, type_name: "🎧DuTch" }, { type_id: 21, type_name: "🎧Mash up" }, { type_id: 22, type_name: "🎧ClubHouse" }, { type_id: 23, type_name: "🎧ElectroHouse" }, { type_id: 24, type_name: "🎧越南鼓Dj" }, { type_id: 30, type_name: "🎧Funky" }, { type_id: 31, type_name: "🎧Reggae" }, { type_id: 32, type_name: "🎧Rnb" }, { type_id: 33, type_name: "🎧Hip Hop" }, { type_id: 34, type_name: "🎧Dubstep" }, { type_id: 8017, type_name: "🎧Hardstyle" }, { type_id: 8018, type_name: "🎧Hands Up" }];
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + "/dance/lists/id/10/1";
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font")[5];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: tt.children[0].data,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/dance/lists/id/" + tid + "/" + pg;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font")[5];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: tt.children[0].data,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("ul.page_link > li > a:contains(\u00a0)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 60,
|
||||
total: 60 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
type_name: '',
|
||||
vod_year: '',
|
||||
vod_area: '',
|
||||
vod_remarks: '',
|
||||
vod_actor: '',
|
||||
vod_director: '',
|
||||
vod_content: '',
|
||||
};
|
||||
const playlist = ["点击播放" + "$" + vod.vod_id];
|
||||
vod.vod_play_from = "DJ";
|
||||
vod.vod_play_url = playlist.join("#");
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const html = await request(id);
|
||||
const $ = load(html);
|
||||
const audio = $("body audio[src*=http]");
|
||||
const audioUrl = audio[0].attribs.src;
|
||||
// console.debug('世纪DJ音乐网 audioUrl =====>' + audioUrl); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: audioUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/index.php/dance/so/key?key=" + wd + "&cid=0&p=" + pg;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font:first")[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: tt.children[0].data,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("ul.page_link > li > a:contains(\u00a0)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 60,
|
||||
total: 60 * pgCount,
|
||||
list: videos,
|
||||
land: 1,
|
||||
ratio: 1.78,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/ali.js
Normal file
1
0130/道长JS/cat/ali.js
Normal file
@ -0,0 +1 @@
|
||||
(function(c,d){const n=b,e=c();while(!![]){try{const f=-parseInt(n(0x148))/0x1+-parseInt(n(0x140))/0x2*(parseInt(n(0x145))/0x3)+parseInt(n(0x150))/0x4*(parseInt(n(0x14c))/0x5)+-parseInt(n(0x147))/0x6+-parseInt(n(0x13d))/0x7+parseInt(n(0x13c))/0x8+parseInt(n(0x13b))/0x9*(parseInt(n(0x142))/0xa);if(f===d)break;else e['push'](e['shift']());}catch(g){e['push'](e['shift']());}}}(a,0xaf4a3));import{_}from'./cat.js';import{log}from'./utils.js';import{initSome,setToken,setShareId,getVod,playerContent,playerContentByFlag}from'./ali_api.js';function a(){const r=['126jHersJ','8018976SyNpYU','7198947GYbEkJ','wGsFx','isEmpty','50HOYYaa','PIvCN','1745270xSfZmS','match','split','68196ySTEaL','trim','3359892YLzwvG','845051dhMcfo','ali\x20init:','MlDBF','xvRmD','4405TqvVPk','stringify','HyWVX','ali\x20init\x20ext:','1244NAvJeB','ewEMb'];a=function(){return r;};return a();}function b(c,d){const e=a();return b=function(f,g){f=f-0x13a;let h=e[f];return h;},b(c,d);}async function initAli(c){const o=b,d={'HyWVX':function(f,g){return f(g);},'PIvCN':o(0x149),'ewEMb':function(f,g){return f+g;},'xvRmD':o(0x14f)};let e=c['ext'];await d[o(0x14e)](log,d[o(0x141)]+typeof c),await initSome(),await d[o(0x14e)](setToken,e),await d[o(0x14e)](log,d[o(0x13a)](d[o(0x14b)],e));}async function detailContent(c){const p=b,d={'MlDBF':function(l,m){return l(m);}},e=/www.aliyundrive.com\/s\/([^\/]+)(\/folder\/([^\/]+))?/;let f=c[p(0x146)](),g=f[p(0x143)](e);if(_[p(0x13f)](g))return'';let h=g[0x1],i=g['length']==0x3?g[0x3]:'';await d[p(0x14a)](setShareId,h);let j=await getVod(f,i),k=JSON[p(0x14d)]({'list':[j]});return k;}async function playContent(c,d,e){const q=b,f={'wGsFx':function(i,j){return i==j;},'rAcPj':function(i,j,k){return i(j,k);}};let g=d[q(0x144)]('+'),h=f[q(0x13e)](c,'原画')?await playerContent(g):await f['rAcPj'](playerContentByFlag,g,c);return h;}export{initAli,detailContent,playContent};
|
1
0130/道长JS/cat/alist_open.js
Normal file
1
0130/道长JS/cat/alist_open.js
Normal file
@ -0,0 +1 @@
|
||||
import{_}from"assets://js/lib/cat.js";import{findBestLCS}from"./lib/similarity.js";const http=async function(url,options={}){"POST"==options.method&&options.data&&(options.body=JSON.stringify(options.data),options.headers=Object.assign({"content-type":"application/json"},options.headers));const res=await req(url,options);return res.json=()=>res.content?JSON.parse(res.content):null,res.text=()=>res.content,res},__drives=(["get","post"].forEach(method=>{http[method]=function(url,options={}){return http(url,Object.assign(options,{method:method.toUpperCase()}))}}),{}),__subtitle_cache={};async function get_drives_path(tid){var index=tid.indexOf("/",1),name=tid.substring(1,index),tid=tid.substring(index);return{drives:await get_drives(name),path:tid}}async function get_drives(name){var{settings,api,server,headers}=__drives[name];return null==settings.v3&&(settings.v3=!1,server=(await http.get(server+"/api/public/settings",{headers:headers})).json().data,_.isArray(server)?(settings.title=server.find(x=>"title"==x.key)?.value,settings.v3=!1,settings.version=server.find(x=>"version"==x.key)?.value,settings.enableSearch="true"==server.find(x=>"enable search"==x.key)?.value):(settings.title=server.title,settings.v3=!0,settings.version=server.version,settings.enableSearch=!1),api.path=settings.v3?"/api/fs/list":"/api/public/path",api.file=settings.v3?"/api/fs/get":"/api/public/path",api.search=(settings.v3,"/api/public/search"),api.other=settings.v3?"/api/fs/other":null),__drives[name]}let siteKey="",siteType=0;function init(cfg){siteKey=cfg.skey,siteType=cfg.stype,cfg.ext.forEach(item=>__drives[item.name]={name:item.name,server:item.server.endsWith("/")?item.server.substring(0,item.server.length-1):item.server,startPage:item.startPage||"/",showAll:!0===item.showAll,params:item.params||{},headers:item.headers||{},_path_param:item.params?_.sortBy(Object.keys(item.params),function(x){return-x.length}):[],settings:{},api:{},getParams(path){var key=this._path_param.find(x=>path.startsWith(x));return Object.assign({},this.params[key],{path:path})},async getPath(path){path=(await http.post(this.server+this.api.path,{headers:this.headers,data:this.getParams(path)})).json();return this.settings.v3?path.data.content:path.data.files},async getFile(path){path=(await http.post(this.server+this.api.file,{headers:this.headers,data:this.getParams(path)})).json(),path=this.settings.v3?path.data:path.data.files[0];return this.settings.v3||(path.raw_url=path.url),path},async getOther(method,path){path=this.getParams(path),path.method=method,method=(await http.post(this.server+this.api.other,{headers:this.headers,data:path})).json();return method},isFolder(data){return 1==data.type},isVideo(data){return this.settings.v3?2==data.type:3==data.type},isSubtitle(data){return 1!=data.type&&[".srt",".ass",".scc",".stl",".ttml"].some(x=>data.name.endsWith(x))},getType(data){var isVideo=this.isVideo(data);return this.isFolder(data)?0:isVideo?10:1},getPic(data){return(this.settings.v3?data.thumb:data.thumbnail)||(this.isFolder(data)?"http://img1.3png.com/281e284a670865a71d91515866552b5f172b.png":"")},getSize(data){let sz=data.size||0;if(sz<=0)return"";let filesize="";return filesize=1099511627776<sz?(sz/=1099511627776,"TB"):1073741824<sz?(sz/=1073741824,"GB"):1048576<sz?(sz/=1048576,"MB"):(sz/=1024,"KB"),sz.toFixed(2)+filesize},getRemark(data){return""}})}async function dir(dir,pg){for(const k in __subtitle_cache)delete __subtitle_cache[k];if(pg=pg||1,"/"===dir||""===dir)return result=_.map(__drives,function(d){return{name:d.name,path:"/"+d.name+d.startPage,type:0,thumb:""}}),JSON.stringify({parent:"",page:pg,pagecount:pg,list:result});let{drives,path}=await get_drives_path(dir);const id=dir.endsWith("/")?dir:dir+"/";var result=await drives.getPath(path);let subtList=[],videos=[],allList=[];return result.forEach(item=>{drives.isSubtitle(item)&&subtList.push(item.name);var isVideo=drives.isVideo(item);(drives.showAll||drives.isFolder(item)||isVideo)&&(isVideo={name:item.name.replaceAll("$","_").replaceAll("#","_"),path:id+item.name+(drives.isFolder(item)?"/":""),thumb:drives.getPic(item),type:drives.getType(item),size:drives.getSize(item),remark:drives.getRemark(item)},drives.isVideo(item)&&videos.push(isVideo),allList.push(isVideo))}),0<subtList.length&&videos.forEach(item=>{var sbust=findBestLCS(item.name,subtList);sbust.bestMatch&&(__subtitle_cache[item.path]=[id+sbust.bestMatch.target])}),JSON.stringify({parent:id,page:pg,pagecount:pg,list:allList})}async function file(file){var{drives,path}=await get_drives_path(file),item=await drives.getFile(path),subs=[];if(__subtitle_cache[file])for(const sub of __subtitle_cache[file])try{var subP=await get_drives_path(sub),subItem=await drives.getFile(subP.path);subs.push(subItem.raw_url)}catch(error){}if("AliyundriveShare2Open"===item.provider&&drives.api.other){var urls=["原画",item.raw_url];try{for(const live of(await drives.getOther("video_preview",path)).data.video_preview_play_info.live_transcoding_task_list)"finished"===live.status&&(urls.push(live.template_id),urls.push(live.url))}catch(error){}file={name:item.name,url:urls,size:drives.getSize(item),remark:drives.getRemark(item),header:{},extra:{subt:subs}};return JSON.stringify(file)}if("123Pan"===item.provider){let url=item.raw_url;try{url=(await http.get(url)).json().data.redirect_url}catch(error){}const result={name:item.name,url:url,size:drives.getSize(item),remark:drives.getRemark(item),header:{},extra:{subt:subs}};return JSON.stringify(result)}{const result={name:item.name,url:item.raw_url,size:drives.getSize(item),remark:drives.getRemark(item),header:{},extra:{subt:subs}};return JSON.stringify(result)}}function search(wd){return JSON.stringify({list:[]})}function __jsEvalReturn(){return{init:init,dir:dir,file:file,search:search}}export{__jsEvalReturn};
|
8
0130/道长JS/cat/app.js
Normal file
8
0130/道长JS/cat/app.js
Normal file
@ -0,0 +1,8 @@
|
||||
function __jsEvalReturn() {
|
||||
return {
|
||||
isVideoFormat: function (url) {
|
||||
return !0;
|
||||
},
|
||||
};
|
||||
}
|
||||
export { __jsEvalReturn };
|
1
0130/道长JS/cat/bilibili.js
Normal file
1
0130/道长JS/cat/bilibili.js
Normal file
@ -0,0 +1 @@
|
||||
import{Crypto,load,_}from"assets://js/lib/cat.js";let key="bilibili",url="",siteKey="",siteType=0;const UA="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",cookie={};async function request(reqUrl,referer,mth,data,hd){var headers={"User-Agent":UA,Cookie:_.map(cookie,(value,key)=>key+"="+value).join(";")},referer=(referer&&(headers.referer=encodeURIComponent(referer)),await req(reqUrl,{method:mth||"get",headers:headers,data:data,postType:"post"===mth?"form":""}));return referer.content}async function init(cfg){siteKey=cfg.skey,siteType=cfg.stype,url=cfg.ext}async function home(filter){return(await request(url)).replaceAll("1$/$1","1$/$0")}async function homeVod(){return"{}"}async function category(tid,pg,filter,extend){pg<=0&&(pg=1);let api=url+"?t="+tid+"&pg="+pg;return extend&&(tid=Object.entries(extend).map(([key,val]=entry)=>"&"+key+"="+val),api=(api+=tid)+("&f="+encodeURIComponent(JSON.stringify(extend)))),request(api)}async function detail(id){return request(url+"?ids="+id)}async function play(flag,id,flags){return request(url.replace("/bilibili","/play")+"?bvid="+id+"&from=open")}async function search(wd,quick){return request(url+"?wd="+wd)}function __jsEvalReturn(){return{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search}}export{__jsEvalReturn};
|
136
0130/道长JS/cat/bookan_book_open.js
Normal file
136
0130/道长JS/cat/bookan_book_open.js
Normal file
@ -0,0 +1,136 @@
|
||||
import { _ } from './lib/cat.js';
|
||||
|
||||
let key = 'bookan';
|
||||
let url = 'https://api.bookan.com.cn';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
return JSON.stringify({
|
||||
class: [
|
||||
{ type_id: '1305', type_name: '少年读物' },
|
||||
{ type_id: '1304', type_name: '儿童文学' },
|
||||
{ type_id: '1320', type_name: '国学经典' },
|
||||
{ type_id: '1306', type_name: '文艺少年' },
|
||||
{ type_id: '1309', type_name: '育儿心经' },
|
||||
{ type_id: '1310', type_name: '心理哲学' },
|
||||
{ type_id: '1307', type_name: '青春励志' },
|
||||
{ type_id: '1312', type_name: '历史小说' },
|
||||
{ type_id: '1303', type_name: '故事会' },
|
||||
{ type_id: '1317', type_name: '音乐戏剧' },
|
||||
{ type_id: '1319', type_name: '相声评书' },
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
pg = pg || 1;
|
||||
if (pg == 0) pg = 1;
|
||||
let content = await request(`${url}/voice/book/list?instance_id=25304&page=${pg}&category_id=${tid}&num=24`);
|
||||
let data = JSON.parse(content).data;
|
||||
let books = [];
|
||||
for (const book of data.list) {
|
||||
books.push({
|
||||
book_id: book.id,
|
||||
book_name: book.name,
|
||||
book_pic: book.cover,
|
||||
book_remarks: book.extra.author,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
page: data.current_page,
|
||||
pagecount: data.last_page,
|
||||
limit: 24,
|
||||
total: data.total,
|
||||
list: books,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let content = await request(`${url}/voice/album/units?album_id=${id}&page=1&num=200&order=1`);
|
||||
let data = JSON.parse(content).data;
|
||||
|
||||
let book = {
|
||||
book_id: id,
|
||||
type_name: '',
|
||||
book_year: '',
|
||||
book_area: '',
|
||||
book_remarks: '',
|
||||
book_actor: '',
|
||||
book_director: '',
|
||||
book_content: '',
|
||||
};
|
||||
let us = _.map(data.list, function (b) {
|
||||
return formatPlayUrl(b.title) + '$' + b.file;
|
||||
}).join('#');
|
||||
book.volumes = '书卷';
|
||||
book.urls = us;
|
||||
|
||||
return JSON.stringify({
|
||||
list: [book],
|
||||
});
|
||||
}
|
||||
|
||||
function formatPlayUrl(name) {
|
||||
return name
|
||||
.trim()
|
||||
.replace(/<|>|《|》/g, '')
|
||||
.replace(/\$|#/g, ' ')
|
||||
.trim();
|
||||
}
|
||||
|
||||
async function proxy(segments, headers) {}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
pg = pg || 1;
|
||||
if (pg == 0) pg = 1;
|
||||
let content = await request(`https://es.bookan.com.cn/api/v3/voice/book?instanceId=25304&keyword=${wd}&pageNum=${pg}&limitNum=20`);
|
||||
let data = JSON.parse(content).data;
|
||||
let books = [];
|
||||
for (const book of data.list) {
|
||||
books.push({
|
||||
book_id: book.id,
|
||||
book_name: book.name,
|
||||
book_pic: book.cover,
|
||||
book_remarks: book.extra.author,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
page: data.current_page,
|
||||
pagecount: data.last_page,
|
||||
limit: 20,
|
||||
total: data.total,
|
||||
list: books,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
190
0130/道长JS/cat/boosj_open.js
Normal file
190
0130/道长JS/cat/boosj_open.js
Normal file
@ -0,0 +1,190 @@
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
let key = '童趣';
|
||||
let HOST = 'https://www.boosj.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
'Referer': HOST
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: '', type_name: '全部' }, { type_id: 28, type_name: '辅食' }, { type_id: 582, type_name: '动画' }, { type_id: 3364, type_name: '儿童舞蹈' }, { type_id: 3366, type_name: '少儿英语' }, { type_id: 3367, type_name: '儿童歌曲' }, { type_id: 3622, type_name: '才艺' }, { type_id: 3782, type_name: '播视自制' }, { type_id: 3822, type_name: '故事' }, { type_id: 3842, type_name: '亲子教育' }, { type_id: 4402, type_name: '美术' }, { type_id: 4583, type_name: '其他' }, { type_id: 4762, type_name: '儿童游戏' }, { type_id: 4842, type_name: '识物' }, { type_id: 4843, type_name: '绘本' }, { type_id: 4844, type_name: '古诗' }, { type_id: 4845, type_name: '科普' }, { type_id: 5102, type_name: '儿童玩具' }, { type_id: 5142, type_name: '播视童趣儿童玩具' }];
|
||||
const filterObj = {};
|
||||
const jsonData = [
|
||||
{
|
||||
key: 'age',
|
||||
name: '年龄段',
|
||||
value: [
|
||||
{ n: '全部', v: '' },
|
||||
{ n: '6岁以上', v: '?p367=370' },
|
||||
{ n: '3~6岁', v: '?p367=369' },
|
||||
{ n: '0~3岁', v: '?p367=368' },
|
||||
],
|
||||
init: '',
|
||||
},
|
||||
{
|
||||
key: 'by',
|
||||
name: '排序',
|
||||
value: [
|
||||
{ n: '全部', v: '' },
|
||||
{ n: '最新发布', v: 'lately' },
|
||||
{ n: '最多播放', v: 'pop' },
|
||||
{ n: '最多评论', v: 'view' },
|
||||
],
|
||||
init: '',
|
||||
},
|
||||
];
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
filterObj[cls.type_id] = jsonData;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + '/search_res_3362__3364_1_.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('body div.bj-col4:has(h3)');
|
||||
let videos = _.map(items, (it) => {
|
||||
const a = $(it).find('a:first')[0];
|
||||
const img = $(it).find('img:first')[0];
|
||||
const remarks = $(it).find('span.played')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: remarks.children[0].data || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof (pg) == 'undefined') pg = 1;
|
||||
const link = HOST + '/search_res_3362__' + tid + '_' + pg + '_' + (extend.by || '') + '.html' + (extend.age || '');
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('body div.bj-col4:has(h3)');
|
||||
let videos = _.map(items, (it) => {
|
||||
const a = $(it).find('a:first')[0];
|
||||
const img = $(it).find('img:first')[0];
|
||||
const remarks = $(it).find('span.played')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: remarks.children[0].data || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('div.pub_paging > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 30,
|
||||
total: 30 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: "",
|
||||
};
|
||||
const playlist = ["点击播放" + "$" + vod.vod_id];
|
||||
vod.vod_play_from = "道长在线";
|
||||
vod.vod_play_url = playlist.join("#");
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const body = JSON.parse(await request('https://gslb.boosj.com/ipv2.json'));
|
||||
body._id = id.match(/\d+/)[0];
|
||||
const json = JSON.parse(await request(buildUrl(body.gslb, body)));
|
||||
const purl = json.url + '?' + json.t
|
||||
// console.debug('童趣purl =====>' + purl); // js_debug.log
|
||||
let headers = {
|
||||
'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 9; 22081212C Build/PQ3B.190801.002)',
|
||||
};
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: purl,
|
||||
header: headers,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
var data = JSON.parse(await request('https://search.boosj.com/m_ajax?q=' + wd + '&p=' + pg + '&typeId=3362')).body;
|
||||
let videos = _.map(data.result, (it) => {
|
||||
return {
|
||||
vod_id: it.playUrl,
|
||||
vod_name: it.resourceName,
|
||||
vod_pic: it.imageUrl,
|
||||
vod_remarks: it.clickNumStr || '',
|
||||
}
|
||||
});
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: data.pageCount,
|
||||
limit: 30,
|
||||
total: data.rowCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
function buildUrl(url, obj) {
|
||||
obj = obj || {};
|
||||
if (url.indexOf('?') < 0) {
|
||||
url += '?'
|
||||
}
|
||||
let param_list = [];
|
||||
let keys = Object.keys(obj);
|
||||
keys.forEach(it => {
|
||||
param_list.push(it + '=' + obj[it])
|
||||
});
|
||||
let prs = param_list.join('&');
|
||||
if (keys.length > 0 && !url.endsWith('?')) {
|
||||
url += '&'
|
||||
}
|
||||
url += prs;
|
||||
return url
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/bulei_open.js
Normal file
1
0130/道长JS/cat/bulei_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1CJAxpidWxlaV9vcGVuLmpzLGFzc2V0czovL2pzL2xpYi9jYXQuanMcX19qc0V2YWxSZXR1cm4MQ3J5cHRvCmRheWpzDGppbmphMgZVcmkCXw5fMHgzNjRiDl8weDI4MzYSXzB4NTY4MThkEl8weDI2YTRmOBJfMHg0ODExMGUSXzB4MmIwODQyEl8weDRkZmY0ORJfMHg0NjNhZTcSXzB4MTc0ODRmEl8weDQxYTQ4NBJfMHg0Y2FlY2USXzB4MTZiNDk4El8weDFkYTUwZRJfMHg1ZTVjZmYSXzB4MWNlNmFiEl8weDJhMDlhNRJfMHg1YzM4NjgSXzB4NTNiZDZmEl8weDE3NTMyZRJfMHhmMGFhNjMSXzB4M2Y1NjZjEl8weDFmNTVkMBJfMHg0ZmVlNzASXzB4MmNhZGIzEl8weGE2Y2Y3MhJfMHgyNjBkMWQSXzB4NTdlZjllEl8weDU0YTQzMBJfMHg1OTM4YzkSXzB4MWRkOTE0El8weDJhMDRiMhJfMHgyY2M1MGMSXzB4NDRlZDU0El8weDQyNzg4ORJfMHg1ODVlOWYSXzB4MWUyYzlhEl8weDVkMjFlYwhlYWNoEnN0cmluZ2lmeRB2b2RfbmFtZQhVdGY4FHN0YXJ0c1dpdGgSc3Vic3RyaW5nWEJWVmhmRlpMVkhCeUQyOURJMU55V1dCT0lrQjJWM1UxYWxrbFcyTWpRazA9HEhVQVdFSSBNYXRlIDQwFHJlcGxhY2VBbGwSYXJlYV9saXN0DG1hYzovLwhoaXRzDGV4dGVuZAxyYW5kb20Ia2V5cw5mb3JFYWNoBmxvZwpwYXJzZTwvYXBwdG8vdjEvY29uZmlnL2dldD9wPWFuZHJvaWQIeWVhcg5idWlsZElkBm1hcOQBJmFyZWE9e3tleHQuYXJlYX19Jmxhbmc9e3tleHQubGFuZ319JnllYXI9e3tleHQueWVhcn19Jm9yZGVyPXt7ZXh0Lm9yZGVyfGRlZmF1bHQoInRpbWUiKX19JnR5cGVfbmFtZT17e2V4dC5jbGFzc319DHZvZF9pZA5pc0VtcHR5DGRvbWFpbgh1cmxzFnZvZF9jb250ZW50CnR5cGVzQERhbHZpay8yLjEuMCAoTGludXg7IFU7IEFuZHJvaWQgmANZUXgyY0Q0U2ZIRnJNaGRTRTFaRENXVm9KVkZ4WmxBd2VuME1RRjBiZlFBaVVXWUxWQkZhQVNsWmVEdEhhbEZOQWxOSUxCZFlVMU56VUZwZkZHMXhmMWtWVlhjRGNXRTFBWElHZGdWMmVsY05ZQ05qUkM5Q0RnbEJRM3hRTEdKOExWdGRDMWtJVkZWR1Ywd2NlWDlKQm1JQUJVa3JDRTFDZVN4MGJWVmtYeXhpZHpNSlZub05LbHhqTWdBREZGWnBJRzFsQWw0Q0JRaz0+L2FwcHRvL3YxL3ZvZC9nZXRMaXN0cz90eXBlX2lkPQh0cmltEnZvZF9hY3RvcihkaVJqRmlkN2RCMW9MbnRuVVE9PQpvcmRlcg50aW1lb3V0DmhlYWRlcnMQdm9kX2FyZWEGZW5jCnNjb3JlBnVybA5yZWxlYXNlLi9hcHB0by92MS9wYXJzaW5nL3Byb3h5CG1vbGQMaHR0cHM6GCZwYWdlU2l6ZT0yMQ5pbmRleE9mDGNvbmZpZxhmcm9tQ2hhckNvZGUIY2F0ZQhza2V5GHZvZF9wbGF5X3VybAYkJCQURU5DUllQVElPTg5jb250ZW50DnZvZF9zdWIwQmxNREFWY0JEZ1lBVmc4Q1ZBb0VWZz09GmdldF9ob21lX2NhdGUYdm9kX2RpcmVjdG9yGnZvZF9wbGF5X2Zyb20SeWVhcl9saXN0CnN0eXBlyAFYeFZFU1JjREdCMVpGVWhBQ1I5QlVoMElWZ3dHQ3c5VkFBQlNIRlFPUXhjRlNScFJVQXBXVXhkYldRWWVWQjFJVkY1WEVGd2FCVjFhVGxGYUIwdFNWbEVSU3h0UUNoa0xRMVlLFmdldF9wYXJzaW5nEnR5cGVfbmFtZQ5yZXBsYWNlBmtleQ4gQnVpbGQvDnJlZmVyZXIadm9kX3BsYXlfbGlzdAhwdXNoFFVzZXItQWdlbnQMQmFzZTY0MiZfX3BsYXRmb3JtPWFuZHJvaWQmX19pYz0caGFzT3duUHJvcGVydHkIYXJlYRJsYW5nX2xpc3QUY2hhckNvZGVBdApsYWJlbA5odHRwOi8vCHRpbWV6YWJhY2RlZmdoamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSEpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4ORZ0b0xvd2VyQ2FzZQhkYXRhDGRldmljZRJsYXN0X3BhZ2UOdm9kX3BpYw5SZWZlcmVyCHl6eXMcN2EwOWQ5NzI4ZTg0ZjI4Y3dCQ1RVc0xHUU1CUlJCUUIwQkRXMWxXVFE9PQgweDQwCDB4MWUGMHgzCDB4M2EIMHgyMggweDU1El8weDVjYThmORJfMHgzNjRiMTkSXzB4MjgzNmYyEl8weDQ4N2M4ZApzaGlmdBJfMHgyOWRkMDASXzB4MzhhYTJkEl8weDEzN2UyNRJfMHg1MTdlZjkSXzB4NTFhNDAyEl8weGY1YzZhZBJfMHgxNmQ1ZWQGcmVxCDB4MmMIcG9zdAxtZXRob2QSZm9ybS1kYXRhEHBvc3RUeXBlCDB4MTAIMHgzOAgweDM3CGFlc1gIMHg1OBJfMHgyY2ZiYjYQXzB4NjYzMzYSXzB4MjY0NjRhEl8weDVkZTZjYggweDM0CDB4M2YIMHg1OQpsb2NhbAYweDYIMHg0ZAgweDE3BGlkCDB4NTcEdWEIMHgxZAgweDJhBDsgCm1vZGVsCDB4NDYIMHgxMwIpCDB4NWUIMHgxOBJfMHgxMzE2YmISXzB4NGQwZjViEl8weDRhZTBkZRJfMHg0YTdmNzQSXzB4Mzc1MjJkEl8weDQ4ZjkzYhJfMHgzNGQxN2QSXzB4MzMwNTNmEl8weDI3NDBlNBJfMHgzYjQxNmISXzB4MjQ0MzIyEl8weDE2ODQ5YRJfMHgyOWQ1NzcSXzB4NDg1OTNiEl8weDNmODg2OAgweDExCDB4NDIIMHgzYggweDJkCDB4MzMOdHlwZV9pZAp0aXRsZQYweGEGMHhjCDB4MWMFe3yLVwgweDQxBjB4NwUwVzpTCDB4NGYIMHg1MAXtiwCKCGxhbmcIMHgzZQV0XuNOCDB4MTIIaW5pdAVoUeiQAm4CdggweDVkCDB4MTkIMHg0OQgweDIzBZJjj14FAGewZQgweDU0BQBn7XAGMHg5BX1ZxIsIMHgyOA5jb25zb2xlDmZpbHRlcnMSXzB4NTZiNThjCDB4NDMSXzB4NGIzNmM0BHt9El8weDIzZTcwMRJfMHgxZGM3MTYSXzB4MjljMzJmEl8weDE1NDkxNBJfMHgxOTE5ZGESXzB4M2Y1YzY3El8weDI4NDNmZBJfMHgxYzhlMGESXzB4Mzk1MGQyCDB4MWYIMHgxNQZleHQMJnBhZ2U9CDB4MmYIMHgxNggweDVmCDB4NWIWdm9kX3JlbWFya3MIMHgzOQhwYWdlEnBhZ2Vjb3VudAhsaXN0El8weDI4MTIzMRJfMHg1OGQ1M2MSXzB4NWFlZWY0El8weDMyNzlhZBJfMHgzOThmNzcSXzB4OTM5ZTUzEl8weDU3NzVkZhJfMHgxNzBmZWUwL2FwcHRvL3YxL3ZvZC9nZXRWb2Q/aWQ9CDB4NGMkZW5jb2RlVVJJQ29tcG9uZW50EnZvZF9jbGFzcwYweDECLBB2b2RfeWVhcggweDI2CDB4MjEIMHgzYwgweDFiCDB4MjAIMHg0OBZwbGF5ZXJfaW5mbwYweGQIMHgxYQgweDRlCDB4MTQIMHgyYgIjCDB4M2QIMHgzNggweDM1El8weDM2MDcxYQgweDU2AiQIMHgyORJfMHg1NDViMmISXzB4MzY2OTEzEl8weDUxY2NjZRJfMHgyN2FlMGYSXzB4M2Y4OTJkEl8weDMwMjFjZhJfMHgyYjVjYWYSXzB4M2M0MmY2El8weGI3MTRmMQhmaW5kCDB4MzEQcGxheV91cmwIMHg1MggweDI0EHRyeSBuZXh0BjB4ZhJfMHgyM2E1NGIIMHg0NRJfMHgzN2MyNzESXzB4NDc3ZGZhEl8weDNjZjBiMBJfMHg0ZDQ4ZjkSXzB4MWI3YmFmEl8weDI0YTExZhJfMHgyYWVmZWE8L2FwcHRvL3YxL3ZvZC9nZXRWb2RTZWFyY2g/d2Q9CDB4NWESXzB4ODZmNGU1El8weDJkNzYyYQYweDUIMHg0NAIgEl8weDQ4OGRkYRJfMHgyMWUzZGESXzB4NTMzMTBjCDB4MzAGMHgyEl8weDlhYWQzZBJfMHg0MjFiNDMSXzB4M2ZjMTQ2El8weGQ4MzQwMBJfMHhhOWM0ZjYSXzB4MTNkMDY2El8weDQ3NGZkMQYweDAELy8IMHgyZQhodHRwCDB4MjUUdXNlci1hZ2VudAgweDRhCDB4NDcIMHg1YwYweGUMaGVhZGVyEl8weDNlMTZmMBJfMHgzZTlhODMSXzB4MWY4NGYzEl8weDU0ZDE1ZRJfMHgxZDM4MjYSXzB4M2NlMWFkEl8weDMxYTFlNxJfMHgxNjM0NmIGMHhiDGh1YXdlaQpicmFuZAYweDQWdG9VcHBlckNhc2USXzB4ZWQyZjljEl8weDUzZWY1NxJfMHgyNzkxZWESXzB4MTcxNzRjEl8weDJiNzExMQgweDMyCDB4NTESXzB4NDY3YjIyEl8weDE0YmUyMQgweDRiCDB4MjcIMHg2MBJfMHgxYTgyN2YSXzB4MjM1ZmRjBjB4OAgweDUzCGhvbWUOaG9tZVZvZBBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gPpAMBpgMBACqoAwAFAKoDAAGsAwACrgMAA7ADAASyAwAOAAYBoAEAAAAgKxapCACqAwAMrAMBDK4DAgywAwMMsgMEDLQDAA22AwENuAMCCboDAwm8AwQJvgMFCcADBgnCAwcJxAMICcYDCQ3IAwoNygMLDcwDDA3OAw0N0AMODdIDDwHUAxAB1gMRAdgDEgHaAxMB3AMUAd4DFQngAxYJ4gMXAeQDGAHmAxkB6AMaAeoDGwHsAxwN7gMdAfADHgHyAx8B9AMgAfYDIQH4AyIB+gMjAfwDJAGoAyUBCOhmvgJfFAC+A18VAL4EXxYAvgVfFwC+Bl8YAL4HXxkAvghfHAC+CV8dAL4KXx4AvgtfHwC+DF8gAL4NXyIAvg5fIwC+D18kAL4QXyUAvhFfJgC+El8nAL4TXygAvhRfKQC+FV8qACkE/wAAAAQAAQAABAEBAAAEAgEAAAQDAQAABF0AAAAEBAEAAAQFAQAABAYBAAAEBwEAAARBAAAABAgBAAAECQEAAAQKAQAABAsBAAAEDAEAAAQNAQAABHoAAAAEDgEAAAQPAQAABBABAAAEEQEAAAQSAQAABBMBAAAEFAEAAAQVAQAABBYBAAAEFwEAAAQYAQAABEAAAAAEGQEAAAQaAQAAJiAABBsBAABMIAAAgAQcAQAATCEAAIAEHQEAAEwiAACABB4BAABMIwAAgAQfAQAATCQAAIAEIAEAAEwlAACABCEBAABMJgAAgAQiAQAATCcAAIAEIwEAAEwoAACABCQBAABMKQAAgAQlAQAATCoAAIAEJgEAAEwrAACABCcBAABMLAAAgAQoAQAATC0AAIAEKQEAAEwuAACABFsAAABMLwAAgAQqAQAATDAAAIAEKwEAAEwxAACABCwBAABMMgAAgAQtAQAATDMAAIAELgEAAEw0AACABC8BAABMNQAAgAQwAQAATDYAAIAEMQEAAEw3AACABDIBAABMOAAAgAQzAQAATDkAAIAENAEAAEw6AACABDUBAABMOwAAgAQ2AQAATDwAAIAENwEAAEw9AACABDgBAABMPgAAgAQ5AQAATD8AAIAEOgEAAExAAACABDsBAABMQQAAgAQ8AQAATEIAAIAEPQEAAExDAACABD4BAABMRAAAgAQeAAAATEUAAIAEPwEAAExGAACABEABAABMRwAAgARBAQAATEgAAIAEQgEAAExJAACABEMBAABMSgAAgAREAQAATEsAAIAERQEAAExMAACABEYBAABMTQAAgARHAQAATE4AAIAESAEAAExPAACABEkBAABMUAAAgAQwAAAATFEAAIAESgEAAExSAACABEsBAABMUwAAgARMAQAATFQAAIAETQEAAExVAACABE4BAABMVgAAgARPAQAATFcAAIAEUAEAAExYAACABFEBAABMWQAAgAQ2AAAATFoAAIAEUgEAAExbAACABFMBAABMXAAAgARUAQAATF0AAIAEVQEAAExeAACABFYBAABMXwAAgARXAQAATGAAAIBfBQC+AGUFALzpAe4OvgFN2wAAAF8GAARYAQAAXwcAv18IAAtfCQCzXwoAv18LALNfDAAEWQEAAF8NAARaAQAAXw4AZQYABFsBAADtXw8AZQYABFwBAADtXxAAZQYABF0BAADtXxEAZQYABF4BAADtXxIAZQYABF8BAADtXxMAC18aAAtfGwBlBgAEYAEAAO1fIQAppAMBBAEAaAIOQwYBAAIBAgIAARMDwgUAAUDEBQABAMYFAQAwYQAAvgBNYwEAAMdiAADQj9jtKaQDAQAOQwYBAAEAAQQBAB0ByAUAAQDCBQADz47X6BjbBEYBAABI2wRlAQAASCQAACQBAA7q5SmkAwEADkMGAQACAQICAQARA8IFAAEAxAUAAQDGBQEAILQDBQxhAADPs57TZQAAz0fHYgAAKKQDAQAOYgYB0gMDBAMLBwCbAgfMBQABAM4FAAEA0AUAAQDSBQEAINQFAQEg1gUBAiDYBQkDA/YDJgDGAw4MugMICLYDBgzQAxMMzAMRDM4DEgxhAgBhAQBhAAAL22UBAO1MRwEAAMcGyNDoTThtAQAAZQIAZQMABG4BAADtnQsEbwEAAExwAQAAC9tlAQDtTEcBAABMJAEAANBMUwEAAARxAQAATHIBAADRTCMBAADuixFjAQAO6hc4bQEAAM8LYgAATCQBAADuixFjAQAOOJgAAABlAwAEcwEAAO1IYgEAZQMABHQBAADtRyQBAMlscAAAAGICAGUDAAR1AQAA7Ue0qehGOJgAAABlAwAEcwEAAO1IOHYBAADbZQQA7SYAAJZiAgBlAwAEdwEAAO1HJgAAlpbbZQUA7dtlBgDtJgAAliIHACQBAA8uYgIAZQMABHcBAADtRxHpBQ5iAgAPLspsBwAAAA7qAi9iAgAupAMBAA5iBgHUAwEDAQcMAM0CBPAFAAEA8gUAAAD0BQABAPYFBQADwAMLCLYDBgzCAwwIuAMHCLwDCQiyAwQM8AMjAO4DIgC6AwgI0gMUAPYDJgDIAw8Mz2UBAAR8AQAA7UcRZgAADs9lAQAEfQEAAO1HEWYCAA5lAQAEfgEAAO3HOH8BAABlAQAEgAEAAO1IZQMAwyQCAIvMZQEABIEBAADtR7Ol6CtsHwAAADiYAAAAZQEABHMBAADtSMQkAQARZgQADg7qC8lsBwAAAA7qAi9lBQBlAQAEggEAAO1IZQQAJAEAaaIAAABeBgDsEWYEAA5lBAAEgwEAAHFeBwC7IO1lAQAEhAEAAO1IJAAASWUEAASFAQAAcWUBAASGAQAA7WUEAGUBAASHAQAA7UedBIgBAACdZQQABIkBAABHnWUBAASKAQAA7Z1lBABlAQAEiwEAAO1HnQSMAQAAnUk4fwEAAARCAAAASGUDAMM4mAAAAGUBAASNAQAA7UhlBAAkAQAkAwCLDl4JAF4KAGULAO3ti2UBAASOAQAA7UcRZggADgYupAMBAA5iBgHWAwEOAQsFAuQGD54GAAEAoAYBACCiBgEBIKQGAQIgpgYCAzCoBgYEIKoGBgUgrAYGBiCuBgcNILAGCAggsgYICSC0BggKILYGCAtguAYGByC6BhEEA7YDBgzSAxQAugMICOADGwiyAwQMYQIAYQEAYQAA3GUCAGUAAASeAQAA7Z3ti8diAABlAAAEnwEAAO1HEWYDAA4mAADIC8lhAwBiAABlAAAEoAEAAO1Hfev3AspiAwBlAAAEoQEAAO1Htapq5AIAAGIBAARGAQAASAtiAwBlAAAEogEAAO1HTKMBAABiAwAEpAEAAEdMQAEAACQBAA7PlmqvAgAAbI4CAABhDABhBgBhBQBhBABiAwBlAAAEpQEAAO1HwQRlBABlAAAEpgEAAO1IYgQAJAEAwQUmAADBBmEHAGIFAH3rgQHBB2ELAGEKAGEJAGEIAL/BCGIEAGIHAEfBCWIJAGUAAASBAQAA7Uezq+gHaAsA61ABYgcAEWUAAASnAQAA7avoGwSoAQAAEWMIAA5lAAAEqQEAAO0RYwcADupwEWUAAASqAQAA7avoGwSrAQAAEWMIAA5lAAAErAEAAO0RYwcADupJEWUAAAStAQAA7avoFwSuAQAAEWMIAA4ErwEAABFjBwAO6iYRZQAABLABAADtq+gZBLEBAAARYwgADmUAAASyAQAA7RFjBwAODmIIAGUAAASBAQAA7Uezq+gHaAsA658AC2IHAExCAQAAYggATDYAAAC/TLMBAADBCiYAAMELYgsABEYBAABICwS0AQAATLUBAAC/TLYBAAAkAQAOYgcAZQAABKkBAADtqegVZQQABP8AAABIYgkAvgAkAgAO6hdlBABlAAAEtwEAAO1IYgkAvgEkAgAOYgoAZQAABLgBAADtcWILAEliBgBlAAAEuQEAAO1IYgoAJAEADmgLAIAAaX7+//8OgwtlAAAEugEAAO1MQgEAAAS7AQAATDYAAAAEUAEAAEyzAQAAwQxiDABlAAAEuAEAAO1xCwS8AQAATLUBAABlAAAEvQEAAO1MtgEAAAsEvgEAAEy1AQAAZQAABL8BAADtTLYBAAALBMABAABMtQEAAGUAAATBAQAA7Uy2AQAAJgMASWIGAGUAAAS5AQAA7UhiDAAkAQAOZQQAZQAABIIBAADtSGIGACQBAJboFmICAGIDAGUAAASiAQAA7UdxYgYASQ7qHcENbBgAAAA4wgEAAAQPAQAASMANJAEADg7qAi+AAGkI/f//DoM4mAAAAAQAAQAASAtiAQBMHgAAAGICAEzDAQAAJAEALqQDAQAOQgYBAAEAAQYCAC4BiAcAAQC2BgsJtgMADGUAAGUBAAS5AQAA7UgLz2UBAATFAQAA7UdMtQEAAM8EQAEAAEdMtgEAACQBACmkAwEADkIGAQABAAEEAgAeAYwHAAEAtgYLCbYDAAxlAABlAQAEuQEAAO1IC89MtQEAAM9MtgEAACQBACmkAwEADmIGAdgDAAAAAQAABgAExwEAAC6kAwEADmIGAdoDBAUECgUAqwIJkAcAAQCSBwABAJQHAAEAlgcAAQCYBwEAIJoHAQEgnAcBAiCeBwEDIKAHAwQwugMICLYDBgyuAwIM0gMUAPwDKQBhAwBhAgBhAQBhAADQEekDDrTHYgAAs6noB7QRYwAADmUAAGUBAATRAQAA7Z3PnchiAQBlAgBlAQAE0gEAAO0L0kzTAQAA7p0RYwEADmIBAATUAQAAYgAAnWUBAATVAQAA7Z2dEWMBAA7eYgEA7YvJJgAAymEEAGICAARTAQAAR33qasEEYgMABEYBAABIC2IEAGUBAATWAQAA7UdMFgEAAGIEAGUBAATXAQAA7UdMAQEAAF4EAGIEAGUBAATYAQAA7UftTFYBAABiBAAE2QEAAEcR6Q8OYgQAZQEABNoBAADtR0zZAQAAJAEADoAA6JQOgziYAAAAZQEABI0BAADtSAtiAABM2wEAAGICAARVAQAARxHpBQ5iAABM3AEAAGIDAEzdAQAAJAEALqQDAQAOYgYB3AMBBwEJCQG0BAi8BwABAL4HAQAgwAcBAWDCBwECIMQHAQMgxgcCBDDIBwMFIMoHAwYg6AMfALYDBgzSAxQAugMICPYDJgDKAxAM8gMkALIDBAzeAxoIYQMAYQIAYQEAYQAA3WUDAATmAQAAnc+dZQEABOcBAADtnTjoAQAAXgQAZQUA7e2d7YvHC2IAAGUBAATWAQAA7UdMFgEAAGIAAGUBAATXAQAA7UdMAQEAAGIAAGUBAATYAQAA7UdMVgEAAGIAAATpAQAAR2UBAATqAQAA7UgE6wEAACQBALNHTEABAABiAAAE7AEAAEdM7AEAAGIAAGUBAATtAQAA7UdMJQEAAGIAAGUBAATuAQAA7UdMIAEAAGIAAGUBAATvAQAA7UdMOgEAAF4GAGIAAGUBAATwAQAA7UftZQEABPEBAADtSCQAAEwaAQAAyCYAAMkmAADKYQQAYgAAZQEABPIBAADtR33rsADBBGEGAGEFAGIEAATzAQAAR2UBAAT0AQAA7UfBBWIEAGUBAAT1AQAA7UfBBmICAGUBAAT2AQAA7UhiBQAkAQCW6G1iBgBlAQAEgQEAAO1Hs6XoXGICAGUBAAS5AQAA7UhiBQAkAQAOYgMABEYBAABIZQcAZQEABPcBAADtSGIGAL4AJAIAZQEABPgBAADtSAT5AQAAJAEAJAEADuoBZQgAYgUAcWIEAATzAQAAR0mAAGlP////DoNiAQBlAQAE+gEAAO1xYgIAZQEABPgBAADtSGUBAAT7AQAA7SQBAEliAQBlAQAE/AEAAO1xYgMAZQEABPgBAADtSGUBAAT7AQAA7SQBAEk4mAAAAGUBAASNAQAA7UgLYgEAJgEATN0BAAAkAQAupAMBAA5CBgEAAQABBQMAKQH6BwABAOgDAADABwEJtgMBDNtlAQAEAQEAAEfPZQIABP4BAADtR+4E/wEAAJ3PZQIABAACAADtR50opAMBAA5iBgHiAwMGAwsGAaECCYIIAAFAhAgAAQCGCAABAIgIAgAwiggDATCMCAUCII4IBQMgkAgJAgOSCAwAA7YDBgyyAwQM4AMbCNIDFAC6AwgI6gMgAGz5AAAAYQAAZQEABAoCAABIZQIAvgAkAgDHYQEAYgAAZQAABAsCAADtR33rwgDIbJ4AAABhAwBhAgDeZQQABCoBAACdC9BMDAIAAGIBAGUAAAQNAgAA7UdMTgEAAM9MQgEAAGIBAGUAAAQOAgAA7Ue86AOa74vJXgUA0GICAO7KYgMAZQAABAACAADtR+gpYgMAZQAABHMBAADts0k4mAAAAGUAAASNAQAA7UhiAwAkAQAPhIMPLjjCAQAABA8BAABIBA8CAAAkAQAODuohwQRsHAAAADjCAQAAZQAABBACAADtSMAEJAEADg7qAi+AAGk9////DoMO6gzBBWwHAAAADuoCLziYAAAABAABAABIC7NMEAEAANBMKAEAACQBAC6kAwEADkIGAQABAAEDAgAOAaIIAAEAtgMADIIIAAPPZQAABBICAADtR9ypKKQDAQAOYgYB5AMDBAMJBADuAQemCAABAKgIAAEAqggAAQCsCAEAIK4IAQEgsAgBAiCyCAMDMNIDFAC6AwgItgMGDPwDKQBhAgBhAQBhAADREekDDrTHYgAAs6noB7QRYwAADttlAQAEGgIAAJ3PnQTUAQAAnWIAAJ3ti8gmAADJYQMAYgEAZQIABHcBAADtR33qX8piAgBlAgAEuQEAAO1IC2IDAAQWAQAAR0wWAQAAYgMAZQIABNcBAADtR0wBAQAA3mIDAARWAQAAR+1MVgEAAGIDAATZAQAARxHpCw5iAwAENwEAAEdM2QEAACQBAA6AAOifDoM4mAAAAGUCAASNAQAA7UgLYgAATNsBAABiAQBlAgAEGwIAAO1HEekFDmIAAEzcAQAAYgIATN0BAAAkAQAupAMBAA5DBgHmAwIAAgQBBFACuAgAAQC6CAABALYDBgzQZQAABPEBAADtSCQAAGUAAAQeAgAA7UjPvyQCAARBAQAASL0AvQEzvyQCAGUAAAQfAgAA7Ui9Ar0DMwQgAgAAJAIAZQAABPEBAADtSCUAAKQDAQAHDzwAfAA+AHwACjB8AAswB4IBAQEAOgAAAAgGAAAABAf1////CwAJIgAAAAkVAAAACQgAAAABPAAHAwAAAAE+AAcDAAAAAQowBwMAAAABCzAMAAoHCFwkfCMHTgEBACAAAAAIBgAAAAQH9f///wsACQgAAAABJAAHAwAAAAEjAAwACg5DBgHoAwIBAgYCADoDwggAAQDECAABAMYIAAAAtgMGDOYDHgDQZQAABCQCAADtSAT/AQAAJAEAy7Ok6APQKNzP0AQEAQAASLPDJAIA7tBlAAAEJQIAAO1IwyQBAJ0opAMBAA5DBgHqAwIFAgQCAb8CB8wIAAEAzggAAQDQCAIAINIIAgFg1AgCAiDWCAIDINgICwADtgMGDLIDBAxsHAEAAGEDAGECAGEBAGEAANAEKAEAAEcR6QMOv8diAABlAAAELQIAAO1IBC4CAAAkAQDoE2UAAAQvAgAA7WIAAJ0RYwAADmIAAAQDAQAASAQwAgAAJAEAlugECw8o0GUAAAQxAgAA7UcR6QMOC8jQBDICAABHEekDDr9lAAAE8QEAAO1IJAAAyWICAGUAAASBAQAA7UezpegSYgEAZQAABDMCAADtcWICAEnQZQAABDQCAADtRxHpAw6/ZQAABPEBAADtSCQAAMpiAwBlAAAEgQEAAO1Hs6XoEmIBAGUAAAQ1AgAA7XFiAwBJZQEABA0BAABIYgEAJAEAZQAABDYCAADtSL4AJAEADgtiAQBMNwIAAGIAAEwoAQAADyjBBGwcAAAAOMIBAABlAAAEEAIAAO1IwAQkAQAODuoCLwsopAMBAA5CBgEAAQABAgEADwHwCAABANIIAQllAADPR5boB2UAAM+YDimkAwEADkMGAe4DAwQDBgMAlQEH8ggAAQD0CAABAPYIAAEA+AgAAAD6CAEAIPwIAAEA/ggDAiCyAwQMtgMGDOwDIQxhAQC/x9A4RQAAAKvoCCYAAJaW6gLQyLPJxc+j6HZhAwDR6DJlAABlAQAEQAIAAO1IZQIAZQEABIEBAADtR7sKnmUCAGUBAASBAQAA7Ue0niQCAOowZQAABAwBAABIs2IBAOgOZQIABDAAAABHtJ7qEWUCAGUBAASBAQAA7Ue7C54kAgDKw2UCAGIDAEedx5MC6ofDKKQDAQAOQwYB8AMAAAAGAwFcALYDBgzuAyIAsgMEDAsEQQIAAExCAgAAZQAABEMCAADtTIkBAAC9AEwpAQAA3LYmAACW7gREAgAASCQAAGUCAGUAAARAAgAA7Ui7C7tjJAIAndy0JgAAlu4ERAIAAEgkAACdTBMBAAAopAMBAAcEMTAOQwYB8gMBAAEEAQY6AYoJAAEAtgMGDM8EQQEAAEi9AL0BM78kAgBlAAAEHwIAAO1IvQK9AzO/JAIAZQAABB8CAADtSL0EvQUzBCACAAAlAgCkAwEABxw8XC8/W14+XSsoPnwkKQe8AQECAFcAAAAIBgAAAAQH9f///wsAATwAHAQAAAAAAAAAAQAAAAEAAAABLwAKHAwAAAABAAAA////fwEAAAAVAgAAAD0APwD//woLAQkIAAAAAT4ABwEAAAAGDAEMAAoHECYuezEsNX07B2ABAQApAAAACAYAAAAEB/X///8LAAEmABwCAAAAAQAAAAUAAAABAAAAAwoBOwAMAAoHDFxzezIsfQeoAQEBAE0AAAAIBgAAAAQH9f///wsAHCwAAAACAAAA////fwEAAAAVCgAJAA0AIAAgAKAAoACAFoAWACAKICggKSAvIC8gXyBfIAAwADD//v/+CgwACg5DBgH0AwICAgkBAGcEjAkAAQCOCQABAJAJAQAgkgkCASC2AwYMYQAAv8dhAQCzyGIBAM8EMAAAAEej6E1iAAA4kwAAAGUAAARKAgAA7UjPBE0BAABIYgEAJAEA0GUAAARLAgAA7UhiAQDQBDAAAABHnCQBAK4kAQCdEWMAAA5iAQCRYwEADuqoYgAAKKQDAQAOQwYB9gMBAAEDAwAKAZgJAAEA9AMlAPoDKADEAw0I29zP7WUCACMCAKQDAQAOQwYB+AMBAAEFAgBFAZoJAAEAqgMADLYDBgxlAAAEJgEAAEdlAQAETgIAAO1HZQEABI0BAADtSGUAAGUBAARPAgAA7UdlAQAEUAIAAO1HZQEABHMBAADtSM8kAQAlAQCkAwEADkMGAfoDAQABBQIARQGiCQABAKoDAAy2AwYMZQAAZQEABE8CAADtRwQCAQAAR2UBAASNAQAA7UhlAABlAQAETwIAAO1HZQEABE4CAADtR2UBAARzAQAA7UjPJAEAJQEApAMBAA5DBgH8AwEAAQUBADsBpAkAAQC2AwYMz+g3z2UAAAQtAgAA7UgECQEAACQBAOgiz2UAAAQfAgAA7UhlAAAEUwIAAO1lAAAEVAIAAO0kAgDTzyikAwEADkMGAagDAAAAAgcAMgDUAxUA1gMWANgDFwDaAxgA3AMZAOIDHADkAx0AC9tMswEAANxMVQIAAN1MVgIAAN5MVwIAAF4EAExYAgAAXgUATFkCAABeBgBMWgIAACikAwEA
|
1
0130/道长JS/cat/caiji.js
Normal file
1
0130/道长JS/cat/caiji.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1BNEGNhaWppLmpzLGFzc2V0czovL2pzL2xpYi9jYXQuanMcX19qc0V2YWxSZXR1cm4CXw5zaXRlS2V5EHNpdGVUeXBlBFVBDmJhc2VVcmwUY2F0ZWdvcmllcwhpbml0EmdldEhlYWRlchJnZXRTdHJpbmcIaG9tZQ5ob21lVm9kEGNhdGVnb3J5DGRldGFpbAhwbGF5DHNlYXJjaN4BTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEwOS4wLjAuMCBTYWZhcmkvNTM3LjM2BmNmZwhza2V5CnN0eXBlBmV4dAZ1cmwMaGVhZGVyFFVzZXItQWdlbnQGcmVzBnJlcQ5oZWFkZXJzDmNvbnRlbnQMZmlsdGVyDHJlcVVybA5qc29uU3RyCGRhdGEWY2xhc3Nlc3NBcnIOY2xhc3NlcxJmaWx0ZXJPYmoGb25lCnBhcnNlDmlzRW1wdHkQaW5jbHVkZXMSdHlwZV9uYW1lCHB1c2gOdHlwZV9pZBJzdHJpbmdpZnkOZmlsdGVycwR7fQZ0aWQEcGcMZXh0ZW5kDHZpZGVvcyA/YWM9dmlkZW9saXN0JnQ9CCZwZz0IbGlzdAx2b2RfaWQQdm9kX25hbWUOdm9kX3BpYxZ2b2RfcmVtYXJrcxBwYXJzZUludAhwYWdlEnBhZ2Vjb3VudApsaW1pdAp0b3RhbARpZAZ2b2QkP2FjPXZpZGVvbGlzdCZpZHM9EHZvZF95ZWFyEHZvZF9hcmVhEnZvZF9hY3Rvchh2b2RfZGlyZWN0b3IWdm9kX2NvbnRlbnQadm9kX3BsYXlfZnJvbRh2b2RfcGxheV91cmwIZmxhZwR3ZApxdWljaxw/YWM9ZGV0YWlsJndkPQ+kAwGmAwEAD6gDAAEAqgMADgAGAaABAAAAARAKSwCqAwAMrAMACa4DAQmwAwIJsgMDCbQDBAm2AwUBuAMGAboDBwG8AwgBvgMJAcADCgHCAwsBxAMMAcYDDQGoAw4BCOg0vgBfBgC+AV8HAL4CXwgAvgNfCQC+BF8KAL4FXwsAvgZfDAC+B18NAL4IXw4AvglfDwApv+Cz4QTkAAAA4r9fBAAmAABfBQAppAMBDAEA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
|
109
0130/道长JS/cat/cntv_open.js
Normal file
109
0130/道长JS/cat/cntv_open.js
Normal file
@ -0,0 +1,109 @@
|
||||
// 无搜索功能
|
||||
import { _ } from './lib/cat.js';
|
||||
let key = '视聚场';
|
||||
let HOST = 'http://api.cntv.cn';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
},
|
||||
});
|
||||
return res.content
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: "TOPC1451528971114112", type_name: "新闻联播" }, { type_id: "TOPC1451558976694518", type_name: "焦点访谈" }, { type_id: "TOPC1451464665008914", type_name: "今日说法" }, { type_id: "TOPC1451378757637200", type_name: "等着我" }, { type_id: "TOPC1451559129520755", type_name: "新闻直播间" }, { type_id: "TOPC1451540328102649", type_name: "海峡两岸" }, { type_id: "TOPC1451530382483536", type_name: "天网" }, { type_id: "TOPC1451540389082713", type_name: "今日关注" }, { type_id: "TOPC1451557893544236", type_name: "探索·发现" }, { type_id: "TOPC1665739007799851", type_name: "高端访谈" }, { type_id: "TOPC1451557052519584", type_name: "百家讲坛" }, { type_id: "TOPC1451464884159276", type_name: "开讲啦" }, { type_id: "TOPC1451464884159276", type_name: "故事里的中国" }, { type_id: "TOPC1514182710380601", type_name: "对话" }, { type_id: "TOPC1451559038345600", type_name: "面对面" }, { type_id: "TOPC1451378967257534", type_name: "动物世界" }, { type_id: "TOPC1451558190239536", type_name: "走进科学" }, { type_id: "TOPC1451525103989666", type_name: "人与自然" }, { type_id: "TOPC1451557421544786", type_name: "地理·中国" }, { type_id: "TOPC1451541349400938", type_name: "远方的家" }, { type_id: "TOPC1451558150787467", type_name: "自然传奇" }, { type_id: "TOPC1451534366388377", type_name: "是真的吗" }, { type_id: "TOPC1451467630488780", type_name: "星光大道" }, { type_id: "TOPC1451557646802924", type_name: "健康之路" }, { type_id: "TOPC1451559025546574", type_name: "动画大放映" }, { type_id: "TOPC1451378857272262", type_name: "第一动画乐园" }, { type_id: "TOPC1451541414450906", type_name: "精彩音乐汇" }, { type_id: "TOPC1451534421925242", type_name: "音乐厅" }, { type_id: "TOPC1451541994820527", type_name: "民歌·中国" }, { type_id: "TOPC1575253587571324", type_name: "跟着书本去旅行" }, { type_id: "TOPC1451354597100320", type_name: "中国电影报道" }, { type_id: "TOPC1451469943519994", type_name: "星推荐" }, { type_id: "TOPC1571217727564820", type_name: "方圆剧阵" }, { type_id: "TOPC1451558856402351", type_name: "空中剧院" }, { type_id: "TOPC1650782829200997", type_name: "正大综艺" }, { type_id: "TOPC1451550970356385", type_name: "体坛快讯" }, { type_id: "TOPC1451530259915198", type_name: "第一时间" }, { type_id: "TOPC1451465894294259", type_name: "开门大吉" }, { type_id: "TOPC1451464884159276", type_name: "开讲啦" }, { type_id: "TOPC1451558858788377", type_name: "共同关注" }, { type_id: "TOPC1451527941788652", type_name: "军事报道" }, { type_id: "TOPC1451558819463311", type_name: "新闻调查" }, { type_id: "TOPC1451559097947700", type_name: "新闻30分" }, { type_id: "TOPC1451559066181661", type_name: "新闻1+1" }, { type_id: "TOPC1451540448405749", type_name: "今日亚洲" }, { type_id: "TOPC1451559129520755", type_name: "新闻直播间" }, { type_id: "TOPC1451558428005729", type_name: "24小时" }, { type_id: "TOPC1451539894330405", type_name: "中国新闻" }, { type_id: "TOPC1451558779639282", type_name: "午夜新闻" }, { type_id: "TOPC1451558496100826", type_name: "朝闻天下" }, { type_id: "TOPC1451528792881669", type_name: "晚间新闻" }, { type_id: "TOPC1451559180488841", type_name: "新闻周刊" }, { type_id: "TOPC1601362002656197", type_name: "经济半小时" }, { type_id: "TOPC1451533652476962", type_name: "经济大讲堂" }, { type_id: "TOPC1453100395512779", type_name: "正点财经" }, { type_id: "TOPC1451546588784893", type_name: "生活圈" }, { type_id: "TOPC1451526037568184", type_name: "生活提示" }, { type_id: "TOPC1451558532019883", type_name: "东方时空" }, { type_id: "TOPC1451533782742171", type_name: "经济信息联播" }, { type_id: "TOPC1571034705435323", type_name: "今日环球" }, { type_id: "TOPC1451543462858283", type_name: "一线" }];
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
})
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const data = JSON.parse(await request(HOST + '/NewVideo/getVideoListByColumn?id=TOPC1451558856402351&n=10&sort=desc&p=1&mode=0&serviceId=tvcctv'));
|
||||
let videos = _.map(data.data.list, (it) => {
|
||||
return {
|
||||
vod_id: it.guid,
|
||||
vod_name: it.title,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: it.time || '',
|
||||
}
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == 'undefined') pg = 1;
|
||||
const data = JSON.parse(await request(HOST + '/NewVideo/getVideoListByColumn?id=' + tid + '&n=10&sort=desc&p=' + pg + '&mode=0&serviceId=tvcctv'));
|
||||
let videos = _.map(data.data.list, (it) => {
|
||||
return {
|
||||
vod_id: it.guid,
|
||||
vod_name: it.title,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: it.time || '',
|
||||
}
|
||||
});
|
||||
const pgChk = JSON.parse(await request(HOST + '/NewVideo/getVideoListByColumn?id=' + tid + '&n=10&sort=desc&p=' + (parseInt(pg) + 1) + '&mode=0&serviceId=tvcctv')).data.list;
|
||||
const pgCount = pgChk.length > 0 ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: parseInt(pgCount),
|
||||
limit: 10,
|
||||
total: parseInt(data.total),
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: '',
|
||||
};
|
||||
const playlist = ['点击播放' + '$' + 'https://hls.cntv.myhwcdn.cn/asp/hls/2000/0303000a/3/default/' + id + '/2000.m3u8'];
|
||||
vod.vod_play_from = key;
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
// console.debug('视聚场 id =====>' + id); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
})
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
return '{}'
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
}
|
||||
}
|
162
0130/道长JS/cat/dj0898_book_open.js
Normal file
162
0130/道长JS/cat/dj0898_book_open.js
Normal file
@ -0,0 +1,162 @@
|
||||
import { load, _ } from "./lib/cat.js";
|
||||
|
||||
let key = "世纪DJ音乐网_book";
|
||||
let HOST = "http://m.dj0898.com";
|
||||
let siteKey = "";
|
||||
let siteType = 0;
|
||||
|
||||
const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36";
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: "get",
|
||||
headers: {
|
||||
"User-Agent": agentSp || MOBILE_UA,
|
||||
Referer: HOST,
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: 1, type_name: "🎧串烧舞曲" }, { type_id: 2, type_name: "🎧外文舞曲" }, { type_id: 3, type_name: "🎧早场暖场" }, { type_id: 4, type_name: "🎧中文舞曲" }, { type_id: 5, type_name: "🎧其他舞曲" }, { type_id: 6, type_name: "🎧国外电音" }, { type_id: 8, type_name: "🎧慢歌连版" }, { type_id: 9, type_name: "🎧酒吧潮歌" }, { type_id: 10, type_name: "🎧中文串烧" }, { type_id: 11, type_name: "🎧外文串烧" }, { type_id: 12, type_name: "🎧中外串烧" }, { type_id: 13, type_name: "🎧车载串烧" }, { type_id: 14, type_name: "🎧越鼓串烧" }, { type_id: 40, type_name: "🎧3D/环绕" }, { type_id: 45, type_name: "🎧口水旋律" }, { type_id: 46, type_name: "🎧精品收藏" }, { type_id: 47, type_name: "🎧开场舞曲" }, { type_id: 48, type_name: "🎧印度舞曲" }, { type_id: 49, type_name: "🎧编排套曲" }, { type_id: 20, type_name: "🎧DuTch" }, { type_id: 21, type_name: "🎧Mash up" }, { type_id: 22, type_name: "🎧ClubHouse" }, { type_id: 23, type_name: "🎧ElectroHouse" }, { type_id: 24, type_name: "🎧越南鼓Dj" }, { type_id: 30, type_name: "🎧Funky" }, { type_id: 31, type_name: "🎧Reggae" }, { type_id: 32, type_name: "🎧Rnb" }, { type_id: 33, type_name: "🎧Hip Hop" }, { type_id: 34, type_name: "🎧Dubstep" }, { type_id: 8017, type_name: "🎧Hardstyle" }, { type_id: 8018, type_name: "🎧Hands Up" }];
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + "/dance/lists/id/10/1";
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font")[5];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: tt.children[0].data,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/dance/lists/id/" + tid + "/" + pg;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font")[5];
|
||||
return {
|
||||
book_id: a.attribs.href,
|
||||
book_name: tt.children[0].data,
|
||||
book_pic: img.attribs["src"],
|
||||
book_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("ul.page_link > li > a:contains(\u00a0)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 60,
|
||||
total: 60 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
book_id: id,
|
||||
type_name: '',
|
||||
book_year: '',
|
||||
book_area: '',
|
||||
book_remarks: '',
|
||||
book_actor: '',
|
||||
book_director: '',
|
||||
book_content: '',
|
||||
};
|
||||
const playlist = ["点击播放" + "$" + vod.book_id];
|
||||
vod.volumes = "道长在线";
|
||||
vod.urls = playlist.join("#");
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const html = await request(id);
|
||||
const $ = load(html);
|
||||
const audio = $("body audio[src*=http]");
|
||||
const audioUrl = audio[0].attribs.src;
|
||||
// console.debug('世纪DJ音乐网 audioUrl =====>' + audioUrl); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: audioUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/index.php/dance/so/key?key=" + wd + "&cid=0&p=" + pg;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("ul.djddv_djList > li");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a")[1];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const tt = $(it).find("strong:first")[0];
|
||||
const remarks = $(it).find("font:first")[0];
|
||||
return {
|
||||
book_id: a.attribs.href,
|
||||
book_name: tt.children[0].data,
|
||||
book_pic: img.attribs["src"],
|
||||
book_remarks: "🎵" + remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("ul.page_link > li > a:contains(\u00a0)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 60,
|
||||
total: 60 * pgCount,
|
||||
list: videos,
|
||||
land: 1,
|
||||
ratio: 1.78,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
166
0130/道长JS/cat/duboku2_open.js
Normal file
166
0130/道长JS/cat/duboku2_open.js
Normal file
@ -0,0 +1,166 @@
|
||||
import { Crypto, load, _, jinja2 } from './lib/cat.js';
|
||||
|
||||
let key = 'duboku';
|
||||
let url = 'https://u.duboku.io';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
const UA = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || UA,
|
||||
'Referer': url
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const html = await request(url);
|
||||
const $ = load(html);
|
||||
const class_parse = $('ul.nav-list > li > a[href*=vodtype]');
|
||||
let classes = [];
|
||||
classes = _.map(class_parse, (cls) => {
|
||||
let typeId = cls.attribs['href'];
|
||||
typeId = typeId.substring(typeId.lastIndexOf('/') + 1).replace('.html','');
|
||||
return {
|
||||
type_id: typeId,
|
||||
type_name: cls.children[0].data,
|
||||
};
|
||||
});
|
||||
let filterObj = {
|
||||
"2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"陆剧","v":"13"},{"n":"日韩剧","v":"15"},{"n":"短剧","v":"21"},{"n":"台泰剧","v":"14"},{"n":"港剧","v":"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":"谍战"},{"n":"冒险","v":"冒险"},{"n":"罪案","v":"罪案"},{"n":"宫廷","v":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"area","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":"荷兰"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"韩语","v":"韩语"},{"n":"泰语","v":"泰语"},{"n":"法语","v":"法语"},{"n":"日语","v":"日语"}]},{"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"}]},{"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":"游戏互动"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"内地"},{"n":"香港","v":"香港"},{"n":"台湾","v":"台湾"},{"n":"韩国","v":"韩国"},{"n":"美国","v":"美国"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"闽南语","v":"闽南语"},{"n":"韩语","v":"韩语"},{"n":"日语","v":"日语"},{"n":"其它","v":"其它"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"4":[{"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":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"国产","v":"国产"},{"n":"日本","v":"日本"},{"n":"美国","v":"美国"},{"n":"法国","v":"法国"},{"n":"其他","v":"其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"闽南语","v":"闽南语"},{"n":"韩语","v":"韩语"},{"n":"日语","v":"日语"},{"n":"其它","v":"其它"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"13":[{"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":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"15":[{"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":"BL","v":"BL"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"韩国","v":"韩国"},{"n":"日本","v":"日本"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"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":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"14":[{"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":"BL","v":"BL"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"台湾","v":"台湾"},{"n":"泰国","v":"泰国"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"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":"谍战"},{"n":"冒险","v":"冒险"},{"n":"罪案","v":"罪案"},{"n":"宫廷","v":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}]
|
||||
};
|
||||
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = url + '/vodshow/2--hits---------.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.myui-panel_bd > ul.myui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/voddetail\/(.*).html/g, '$1'),
|
||||
vod_name: it.attribs.title,
|
||||
vod_pic: it.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0) pg = 1;
|
||||
|
||||
const link = url + '/vodshow/' + (extend.CateId || tid) + '-'+(extend.area || '')+'-'+(extend.by || 'time')+'-'+(extend.class || '')+'-'+(extend.lang || '')+'-'+(extend.letter || '')+'---' + (`${pg}`) + '---'+(extend.year || '')+'.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.myui-panel_bd > ul.myui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/voddetail\/(.*).html/g, '$1'),
|
||||
vod_name: it.attribs.title,
|
||||
vod_pic: it.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('ul.myui-page > li > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(url + '/voddetail/' + id + '.html');
|
||||
const $ = load(html);
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_name: $('h1:first').text().trim(),
|
||||
vod_type: $('.myui-content__detail p:first a').text(),
|
||||
vod_actor: $('.myui-content__detail p:nth-child(5)').text().replace('主演:',''),
|
||||
vod_director: $('.myui-content__detail p:nth-child(6)').text().replace('导演:',''),
|
||||
vod_pic: $('div.myui-content__thumb img:first').attr('data-original'),
|
||||
vod_remarks :$('#rating:first span').text().replace(/\s{2,}/g, ' '),
|
||||
vod_content: $('span.data').text().trim(),
|
||||
};
|
||||
const playlist = _.map($('ul.sort-list > li > a'), (it) => {
|
||||
return it.children[0].data + '$' + it.attribs.href.replace(/\/vodplay\/(.*).html/g, '$1');
|
||||
});
|
||||
vod.vod_play_from = key;
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = url + '/vodplay/' + id + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const js = JSON.parse($('script:contains(player_)').html().replace('var player_data=',''));
|
||||
const playUrl = js.url.replace('index.m3u8','hls\/index.m3u8');
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
let data = JSON.parse(await request(url + '/index.php/ajax/suggest?mid=1&wd=' + wd)).list;
|
||||
let videos = [];
|
||||
for (const vod of data) {
|
||||
videos.push({
|
||||
vod_id: vod.id,
|
||||
vod_name: vod.name,
|
||||
vod_pic: vod.pic,
|
||||
vod_remarks: '',
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
173
0130/道长JS/cat/duboku_open.js
Normal file
173
0130/道长JS/cat/duboku_open.js
Normal file
@ -0,0 +1,173 @@
|
||||
// 修复 Windows版 播放转圈圈
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
let key = 'duboku';
|
||||
let HOST = 'https://u.duboku.io';
|
||||
// let HOST = 'https://www.duboku.tv';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
'Referer': HOST
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const html = await request(HOST);
|
||||
const $ = load(html);
|
||||
const class_parse = $('ul.nav-list > li > a[href*=vodtype]');
|
||||
let classes = [];
|
||||
classes = _.map(class_parse, (cls) => {
|
||||
let typeId = cls.attribs['href'];
|
||||
typeId = typeId.substring(typeId.lastIndexOf('/') + 1).replace('.html','');
|
||||
return {
|
||||
type_id: typeId,
|
||||
type_name: cls.children[0].data,
|
||||
};
|
||||
});
|
||||
let filterObj = {
|
||||
"2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"陆剧","v":"13"},{"n":"日韩剧","v":"15"},{"n":"短剧","v":"21"},{"n":"台泰剧","v":"14"},{"n":"港剧","v":"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":"谍战"},{"n":"冒险","v":"冒险"},{"n":"罪案","v":"罪案"},{"n":"宫廷","v":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"area","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":"荷兰"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"韩语","v":"韩语"},{"n":"泰语","v":"泰语"},{"n":"法语","v":"法语"},{"n":"日语","v":"日语"}]},{"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"}]},{"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":"游戏互动"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"内地"},{"n":"香港","v":"香港"},{"n":"台湾","v":"台湾"},{"n":"韩国","v":"韩国"},{"n":"美国","v":"美国"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"闽南语","v":"闽南语"},{"n":"韩语","v":"韩语"},{"n":"日语","v":"日语"},{"n":"其它","v":"其它"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"4":[{"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":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"国产","v":"国产"},{"n":"日本","v":"日本"},{"n":"美国","v":"美国"},{"n":"法国","v":"法国"},{"n":"其他","v":"其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"},{"n":"粤语","v":"粤语"},{"n":"闽南语","v":"闽南语"},{"n":"韩语","v":"韩语"},{"n":"日语","v":"日语"},{"n":"其它","v":"其它"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"13":[{"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":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"15":[{"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":"BL","v":"BL"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"韩国","v":"韩国"},{"n":"日本","v":"日本"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"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":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
|
||||
"14":[{"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":"BL","v":"BL"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"台湾","v":"台湾"},{"n":"泰国","v":"泰国"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"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":"谍战"},{"n":"冒险","v":"冒险"},{"n":"罪案","v":"罪案"},{"n":"宫廷","v":"宫廷"},{"n":"BL","v":"BL"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"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"}]},{"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"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}]
|
||||
};
|
||||
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + '/vodshow/2--hits---------.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.myui-panel_bd > ul.myui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/voddetail\/(.*).html/g, '$1'),
|
||||
vod_name: it.attribs.title,
|
||||
vod_pic: it.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0) pg = 1;
|
||||
const link = HOST + '/vodshow/' + (extend.CateId || tid) + '-'+(extend.area || '')+'-'+(extend.by || 'time')+'-'+(extend.class || '')+'-'+(extend.lang || '')+'-'+(extend.letter || '')+'---' + (`${pg}`) + '---'+(extend.year || '')+'.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.myui-panel_bd > ul.myui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
const it = $(item).find('a:first')[0];
|
||||
const remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: it.attribs.href.replace(/.*?\/voddetail\/(.*).html/g, '$1'),
|
||||
vod_name: it.attribs.title,
|
||||
vod_pic: it.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('ul.myui-page > li > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(HOST + '/voddetail/' + id + '.html');
|
||||
const $ = load(html);
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_name: $('h1:first').text().trim(),
|
||||
vod_type: $('.myui-content__detail p:first a').text(),
|
||||
vod_actor: $('.myui-content__detail p:nth-child(5)').text().replace('主演:',''),
|
||||
vod_director: $('.myui-content__detail p:nth-child(6)').text().replace('导演:',''),
|
||||
vod_pic: $('div.myui-content__thumb img:first').attr('data-original'),
|
||||
vod_remarks :$('#rating:first span').text().replace(/\s{2,}/g, ' '),
|
||||
vod_content: $('span.data').text().trim(),
|
||||
};
|
||||
const playlist = _.map($('ul.sort-list > li > a'), (it) => {
|
||||
return it.children[0].data + '$' + it.attribs.href.replace(/\/vodplay\/(.*).html/g, '$1');
|
||||
});
|
||||
// vod.vod_play_from = key;
|
||||
vod.vod_play_from = '道长在线';
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = HOST + '/vodplay/' + id + '.html';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const js = JSON.parse($('script:contains(player_)').html().replace(/var player_.*=/,''));
|
||||
const playUrl = js.url;
|
||||
let headers = {
|
||||
"referer": HOST+"/static/player/vidjs.html",
|
||||
};
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
header: headers,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
let data = JSON.parse(await request(HOST + '/index.php/ajax/suggest?mid=1&wd=' + wd + '&limit=50')).list;
|
||||
let videos = [];
|
||||
for (const vod of data) {
|
||||
videos.push({
|
||||
vod_id: vod.id,
|
||||
vod_name: vod.name,
|
||||
vod_pic: vod.pic,
|
||||
vod_remarks: '',
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
limit: 50,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
261
0130/道长JS/cat/ikanbot_open.js
Normal file
261
0130/道长JS/cat/ikanbot_open.js
Normal file
@ -0,0 +1,261 @@
|
||||
import { Crypto, load, _ } from './lib/cat.js';
|
||||
|
||||
let key = 'ikanbot';
|
||||
let url = 'https://www.ikanbot.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
const UA = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || UA,
|
||||
'referer': url
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
function getClass($) {
|
||||
const nav = $('ul.nav-pills:eq(1) > li > a');
|
||||
let tags = {
|
||||
key: 'tag',
|
||||
name: '标签',
|
||||
value: _.map(nav, (n) => {
|
||||
return { n: n.children[0].data, v: n.attribs.href };
|
||||
}),
|
||||
};
|
||||
tags['init'] = tags.value[0].v;
|
||||
const title = $('title:first').text().split('-')[0].substring(2);
|
||||
return { cls: { type_id: tags.value[0].v, type_name: title }, tags: [tags] };
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
let classes = [];
|
||||
let filterObj = {};
|
||||
for (const cate of ['/hot/index-movie-热门.html', '/hot/index-tv-热门.html']) {
|
||||
const html = await request(url + cate);
|
||||
const $ = load(html);
|
||||
const { cls, tags } = getClass($);
|
||||
classes.push(cls);
|
||||
filterObj[cls.type_id] = tags;
|
||||
}
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const html = await request(url);
|
||||
const $ = load(html);
|
||||
const items = $('div.v-list a.item');
|
||||
var jsBase = await js2Proxy(true, siteType, siteKey, 'img/', {});
|
||||
let videos = _.map(items, (item) => {
|
||||
const img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: item.attribs.href,
|
||||
vod_name: img.attribs.alt,
|
||||
vod_pic: jsBase + base64Encode(img.attribs['data-src']),
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0) pg = 1;
|
||||
const link = url + (extend.tag || tid).replace('.html', pg > 1 ? `-p-${pg}.html` : '.html');
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.v-list a.item');
|
||||
var jsBase = await js2Proxy(true, siteType, siteKey, 'img/', {});
|
||||
let videos = _.map(items, (item) => {
|
||||
const img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: item.attribs.href,
|
||||
vod_name: img.attribs.alt,
|
||||
vod_pic: jsBase + base64Encode(img.attribs['data-src']),
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('div.page-more > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(url + id);
|
||||
const $ = load(html);
|
||||
var jsBase = await js2Proxy(true, siteType, siteKey, 'img/', {});
|
||||
const detail = $('div.detail');
|
||||
const remarks = $('span#line-tips').text();
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_pic: jsBase + base64Encode($('div.item-root > img')[0].attribs['data-src']),
|
||||
vod_remarks: '',
|
||||
vod_content: remarks || '',
|
||||
vod_name: $(detail).find('h2').text().trim(),
|
||||
vod_year: $(detail).find('h3:nth-child(3)').text(),
|
||||
vod_area: $(detail).find('h3:nth-child(4)').text(),
|
||||
vod_actor: $(detail).find('h3:nth-child(5)').text(),
|
||||
};
|
||||
const res = await req(url + '/api/getResN?videoId=' + id.substring(id.lastIndexOf('/') + 1) + '&mtype=2&token=9109590b194731fde643ce27924fcf6f', {
|
||||
headers: {
|
||||
Referer: 'play',
|
||||
'User-Agent': UA,
|
||||
},
|
||||
});
|
||||
const list = JSON.parse(res.content).data.list;
|
||||
let playlist = {};
|
||||
let arr = []
|
||||
for (const l of list) {
|
||||
const flagData = JSON.parse(l.resData);
|
||||
for (const f of flagData) {
|
||||
const from = f.flag;
|
||||
const urls = f.url;
|
||||
if (!from || !urls) continue;
|
||||
if (playlist[from]) continue;
|
||||
playlist[from] = urls;
|
||||
}
|
||||
}
|
||||
for (var key in playlist) {
|
||||
if ('kuaikan' == key) {
|
||||
arr.push({
|
||||
flag: '快看',
|
||||
url: playlist[key],
|
||||
sort: 1
|
||||
})
|
||||
} else if ('bfzym3u8' == key) {
|
||||
arr.push({
|
||||
flag: '暴风',
|
||||
url: playlist[key],
|
||||
sort: 2
|
||||
})
|
||||
} else if ('ffm3u8' == key) {
|
||||
arr.push({
|
||||
flag: '非凡',
|
||||
url: playlist[key],
|
||||
sort: 3
|
||||
})
|
||||
} else if ('lzm3u8' == key) {
|
||||
arr.push({
|
||||
flag: '量子',
|
||||
url: playlist[key],
|
||||
sort: 4
|
||||
})
|
||||
} else {
|
||||
arr.push({
|
||||
flag: key,
|
||||
url: playlist[key],
|
||||
sort: 5
|
||||
})
|
||||
}
|
||||
}
|
||||
arr.sort((a, b) => a.sort - b.sort);
|
||||
let playFrom = [];
|
||||
let playList = [];
|
||||
arr.map(val => {
|
||||
playFrom.push(val.flag);
|
||||
playList.push(val.url);
|
||||
})
|
||||
vod.vod_play_from = playFrom.join("$$$");
|
||||
vod.vod_play_url = playList.join("$$$");
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
function base64Encode(text) {
|
||||
return Crypto.enc.Base64.stringify(Crypto.enc.Utf8.parse(text));
|
||||
}
|
||||
|
||||
function base64Decode(text) {
|
||||
return Crypto.enc.Utf8.stringify(Crypto.enc.Base64.parse(text));
|
||||
}
|
||||
|
||||
async function proxy(segments, headers) {
|
||||
let what = segments[0];
|
||||
let url = base64Decode(segments[1]);
|
||||
if (what == 'img') {
|
||||
var resp = await req(url, {
|
||||
buffer: 2,
|
||||
headers: {
|
||||
Referer: url,
|
||||
'User-Agent': UA,
|
||||
},
|
||||
});
|
||||
return JSON.stringify({
|
||||
code: resp.code,
|
||||
buffer: 2,
|
||||
content: resp.content,
|
||||
headers: resp.headers,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
code: 500,
|
||||
content: '',
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
const html = await request(url + '/search?q=' + wd + '&p=' + pg);
|
||||
const $ = load(html);
|
||||
const items = $('div.media');
|
||||
var jsBase = await js2Proxy(true, siteType, siteKey, 'img/', {});
|
||||
let videos = _.map(items, (item) => {
|
||||
const a = $(item).find('a:first')[0];
|
||||
const img = $(item).find('img:first')[0];
|
||||
const remarks = $($(item).find('span.label')[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: img.attribs.alt,
|
||||
vod_pic: jsBase + base64Encode(img.attribs['data-src']),
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
const hasMore = $('div.page-more > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
proxy: proxy,
|
||||
search: search,
|
||||
};
|
||||
}
|
206
0130/道长JS/cat/jojo_open.js
Normal file
206
0130/道长JS/cat/jojo_open.js
Normal file
@ -0,0 +1,206 @@
|
||||
import { Crypto, load, _, dayjs } from 'assets://js/lib/cat.js';
|
||||
|
||||
let key = 'jiohub';
|
||||
let url = 'https://jiohub.top';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
const UA = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1';
|
||||
|
||||
const cookie = {};
|
||||
|
||||
async function request(reqUrl, referer, mth, data, hd) {
|
||||
const headers = {
|
||||
'User-Agent': UA,
|
||||
Cookie: _.map(cookie, (value, key) => {
|
||||
return `${key}=${value}`;
|
||||
}).join(';'),
|
||||
};
|
||||
if (referer) headers.referer = encodeURIComponent(referer);
|
||||
let res = await req(reqUrl, {
|
||||
method: mth || 'get',
|
||||
headers: headers,
|
||||
data: data,
|
||||
postType: mth === 'post' ? 'form' : '',
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const html = await request(url);
|
||||
const $ = load(html);
|
||||
const series = $('.nav-list a[href*=/video]');
|
||||
let classes = _.map(series, (s) => {
|
||||
let typeId = s.attribs['href'];
|
||||
let typeName = typeId.match(/\/video\/(.*)\?/)[1];
|
||||
typeName = decodeURIComponent(typeName);
|
||||
return {
|
||||
type_id: typeName,
|
||||
type_name: typeName,
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
let page = pg || 1;
|
||||
if (page == 0) page = 1;
|
||||
const link = url + '/video/' + tid + "?page=" + page + '&size=18';
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.content-body > a');
|
||||
let videos = _.map(items, (item) => {
|
||||
const img = $(item).find('img:first')[0].attribs['src'];
|
||||
const a = item.attribs['href'].match(/\/watch\/(.*)/)[1];
|
||||
const n = ($(item).find('p.card-title')[0]).children[0].data;
|
||||
let speed = ($(item).find('p.item-speed')[0]).children[0].data || '';
|
||||
const score = ($(item).find('p.score')[0]).children[0].data || '';
|
||||
if (speed == tid) speed = '';
|
||||
return {
|
||||
vod_id: a,
|
||||
vod_name: n,
|
||||
vod_pic: img,
|
||||
vod_remarks: speed || score || '',
|
||||
};
|
||||
});
|
||||
|
||||
let total = 18;
|
||||
const pag = $('ui-pagination');
|
||||
if (pag.length > 0) {
|
||||
try {
|
||||
total = parseInt(pag[0].attribs['total']);
|
||||
} catch (error) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return JSON.stringify({
|
||||
page: page,
|
||||
pagecount: _.ceil(total / 18),
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
function stripHtmlTag(src) {
|
||||
return src
|
||||
.replace(/<\/?[^>]+(>|$)/g, '')
|
||||
.replace(/&.{1,5};/g, '')
|
||||
.replace(/\s{2,}/g, ' ');
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const html = await request(url + '/watch/' + id);
|
||||
const $ = load(html);
|
||||
const detail = $('div.content-detail > p');
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_content: stripHtmlTag($('div.content-detail span.detail-sketch').html()).trim(),
|
||||
};
|
||||
for (const info of detail) {
|
||||
const i = $(info).text().trim();
|
||||
if (i.startsWith('地区:')) {
|
||||
vod.vod_area = i.substring(3);
|
||||
} else if (i.startsWith('年份:')) {
|
||||
vod.vod_year = i.substring(3);
|
||||
} else if (i.startsWith('类型:')) {
|
||||
vod.vod_type = i.substring(3);
|
||||
} else if (i.startsWith('导演:')) {
|
||||
vod.vod_director = i.substring(3);
|
||||
} else if (i.startsWith('主演:')) {
|
||||
vod.vod_actor = i.substring(3);
|
||||
} else if (i.startsWith('语言:')) {
|
||||
vod.vod_lang = i.substring(3);
|
||||
}
|
||||
}
|
||||
|
||||
const urls = html.match(/let urls = \"(.*)\";/)[1].replace(/_/g, '/').replace(/-/g, '+');
|
||||
var key = Crypto.enc.Utf8.parse("cf2d1a-6a4d-9ef8");
|
||||
var playlist = Crypto.AES.decrypt(urls, key, { iv: key, padding: Crypto.pad.Pkcs7 });
|
||||
playlist = Crypto.enc.Utf8.stringify(playlist).split('\n');
|
||||
vod.vod_play_from = 'JOJO';
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
function playPid() {
|
||||
var key = Crypto.enc.Utf8.parse("ba0-d4g5-45eb-c2ba0-d4g5-45eb-cs");
|
||||
var iv = Crypto.enc.Hex.parse("00000000000000000000000000000000");
|
||||
var pid = Crypto.AES.encrypt(dayjs().format('YYYY-MM-DD HH:mm'), key, { iv: iv, padding: Crypto.pad.Pkcs7 });
|
||||
pid = pid.toString().replace(/\+/g, '-');
|
||||
return pid;
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id + '?pid=' + playPid(),
|
||||
header: {
|
||||
'User-Agent': UA,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
let page = pg || 1;
|
||||
if (page == 0) page = 1;
|
||||
const link = url + '/video/search?q=' + wd + "&page=" + page + '&size=18&pid=' + playPid();
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $('div.content-body > a');
|
||||
let videos = _.map(items, (item) => {
|
||||
const img = $(item).find('img:first')[0].attribs['src'];
|
||||
const a = item.attribs['href'].match(/\/watch\/(.*)/)[1];
|
||||
const n = ($(item).find('p.card-title')[0]).children[0].data;
|
||||
let speed = ($(item).find('p.item-speed')[0]).children[0].data || '';
|
||||
const score = ($(item).find('p.score')[0]).children[0].data || '';
|
||||
if (speed == '电影') speed = '';
|
||||
return {
|
||||
vod_id: a,
|
||||
vod_name: n,
|
||||
vod_pic: img,
|
||||
vod_remarks: speed || score || '',
|
||||
};
|
||||
});
|
||||
|
||||
let total = 18;
|
||||
const pag = $('ui-pagination');
|
||||
if (pag.length > 0) {
|
||||
try {
|
||||
total = parseInt(pag[0].attribs['total']);
|
||||
} catch (error) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return JSON.stringify({
|
||||
page: page,
|
||||
pagecount: _.ceil(total / 18),
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
412
0130/道长JS/cat/kkys_open.js
Normal file
412
0130/道长JS/cat/kkys_open.js
Normal file
@ -0,0 +1,412 @@
|
||||
import { Crypto, dayjs, jinja2, _ } from './lib/cat.js';
|
||||
|
||||
let key = 'kkys';
|
||||
let url = 'https://api1.baibaipei.com:8899';
|
||||
let device = {};
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
|
||||
async function request(reqUrl, postData, agentSp, get) {
|
||||
let ts = dayjs().valueOf().toString();
|
||||
let rand = randStr(32);
|
||||
let sign = Crypto.MD5('abcdexxxdd2daklmn25129_' + ts + '_' + rand)
|
||||
.toString()
|
||||
.toLowerCase();
|
||||
let headers = {
|
||||
'user-agent': agentSp || device.ua,
|
||||
};
|
||||
if (reqUrl.includes('baibaipei')) {
|
||||
headers['device-id'] = device.id;
|
||||
headers['push-token'] = '';
|
||||
headers['sign'] = sign;
|
||||
headers['time'] = ts;
|
||||
headers['md5'] = rand;
|
||||
headers['version'] = '2.1.0';
|
||||
headers['system-model'] = device.model;
|
||||
headers['system-brand'] = device.brand;
|
||||
headers['system-version'] = device.release;
|
||||
}
|
||||
let res = await req(reqUrl, {
|
||||
method: get ? 'get' : 'post',
|
||||
headers: headers,
|
||||
data: postData || {},
|
||||
postType: get ? '' : 'form',
|
||||
});
|
||||
|
||||
let content = res.content;
|
||||
// console.log(content);
|
||||
return content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
var deviceKey = 'device';
|
||||
var deviceInfo = await local.get(key, deviceKey);
|
||||
if (deviceInfo.length > 0) {
|
||||
try {
|
||||
device = JSON.parse(deviceInfo);
|
||||
} catch (error) {}
|
||||
}
|
||||
if (_.isEmpty(device)) {
|
||||
device = randDevice();
|
||||
device.id = randStr(33).toLowerCase();
|
||||
device.ua = 'okhttp/4.1.0';
|
||||
await local.set(key, deviceKey, JSON.stringify(device));
|
||||
}
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
// await req('https://www.facebook.com', {});
|
||||
let data = JSON.parse(await request(url + '/api.php/Index/getTopVideoCategory')).data;
|
||||
let classes = [];
|
||||
let filterObj = {};
|
||||
for (const type of data) {
|
||||
let typeName = type.nav_name;
|
||||
if (typeName == '推荐') continue;
|
||||
let typeId = type.nav_type_id.toString();
|
||||
classes.push({
|
||||
type_id: typeId,
|
||||
type_name: typeName,
|
||||
});
|
||||
if (!filter) continue;
|
||||
try {
|
||||
let filterAll = [];
|
||||
let filterData = JSON.parse(await request(url + '/api.php/Video/getFilterType', { type: typeId })).data;
|
||||
for (let key of Object.keys(filterData)) {
|
||||
let itemValues = filterData[key];
|
||||
if (key === 'plot') key = 'class';
|
||||
let typeExtendName = '';
|
||||
switch (key) {
|
||||
case 'class':
|
||||
typeExtendName = '类型';
|
||||
break;
|
||||
case 'area':
|
||||
typeExtendName = '地区';
|
||||
break;
|
||||
case 'lang':
|
||||
typeExtendName = '语言';
|
||||
break;
|
||||
case 'year':
|
||||
typeExtendName = '年代';
|
||||
break;
|
||||
case 'sort':
|
||||
typeExtendName = '排序';
|
||||
break;
|
||||
}
|
||||
if (typeExtendName.length === 0) continue;
|
||||
let newTypeExtend = {
|
||||
key: key,
|
||||
name: typeExtendName,
|
||||
};
|
||||
let newTypeExtendKV = [];
|
||||
for (let j = 0; j < itemValues.length; j++) {
|
||||
const name = itemValues[j];
|
||||
let value = key === 'sort' ? j + '' : name === '全部' ? '0' : name;
|
||||
newTypeExtendKV.push({ n: name, v: value });
|
||||
}
|
||||
newTypeExtend['init'] = key === 'sort' ? '1' : newTypeExtendKV[0]['v'];
|
||||
newTypeExtend.value = newTypeExtendKV;
|
||||
filterAll.push(newTypeExtend);
|
||||
}
|
||||
if (!_.isEmpty(filterAll)) {
|
||||
filterObj[typeId] = filterAll;
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
}
|
||||
}
|
||||
// console.log(await homeVod());
|
||||
// console.log(classes);
|
||||
// console.log(filterObj);
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
let jsonArray = JSON.parse(await request(url + '/api.php/Index/getHomePage', { type: 1, p: 1 })).data.video;
|
||||
let videos = [];
|
||||
for (const item of jsonArray) {
|
||||
if (item.title.styleType !== 0) continue;
|
||||
for (const vObj of item.list) {
|
||||
videos.push({
|
||||
vod_id: vObj.vod_id,
|
||||
vod_name: vObj.vod_name,
|
||||
vod_pic: vObj.vod_pic,
|
||||
vod_remarks: vObj.vod_remarks || vObj.vod_score || '',
|
||||
});
|
||||
}
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg == 0) pg = 1;
|
||||
let reqUrl = url + '/api.php/Video/getFilterVideoList';
|
||||
var formData = JSON.parse(
|
||||
jinja2(
|
||||
`{
|
||||
"type": "{{tid}}",
|
||||
"p": "{{pg}}",
|
||||
"area": "{{ext.area|default(0)}}",
|
||||
"year": "{{ext.year|default(0)}}",
|
||||
"sort": "{{ext.sort|default(0)}}",
|
||||
"class": "{{ext.class|default(0)}}"
|
||||
}`,
|
||||
{ ext: extend, tid: tid, pg: pg }
|
||||
)
|
||||
);
|
||||
console.log(formData);
|
||||
let data = JSON.parse(await request(reqUrl, formData)).data;
|
||||
let videos = [];
|
||||
for (const vod of data.data) {
|
||||
videos.push({
|
||||
vod_id: vod.vod_id,
|
||||
vod_name: vod.vod_name,
|
||||
vod_pic: vod.vod_pic,
|
||||
vod_remarks: vod.vod_remarks || vod.vod_score || '',
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
page: parseInt(data.current_page),
|
||||
pagecount: parseInt(data.last_page),
|
||||
limit: parseInt(data.per_page),
|
||||
total: parseInt(data.total),
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let data = JSON.parse(await request(url + '/api.php/Video/getVideoInfo', { video_id: id })).data.video;
|
||||
let vod = {
|
||||
vod_id: data.vod_id,
|
||||
vod_name: data.vod_name,
|
||||
vod_pic: data.vod_pic,
|
||||
type_name: data.vod_class,
|
||||
vod_year: data.vod_year,
|
||||
vod_area: data.vod_area,
|
||||
vod_remarks: data.vod_remarks || '',
|
||||
vod_actor: data.vod_actor,
|
||||
vod_director: data.vod_director,
|
||||
vod_content: data.vod_content.trim(),
|
||||
};
|
||||
let playlist = {};
|
||||
for (const item of data.vod_play) {
|
||||
let from = item.playerForm;
|
||||
if (from === 'jp') continue;
|
||||
if (from === 'xg') continue;
|
||||
let urls = [];
|
||||
for (const u of item.url) {
|
||||
urls.push(formatPlayUrl(vod.vod_name, u.title) + '$' + u.play_url);
|
||||
}
|
||||
if (!playlist.hasOwnProperty(from) && urls.length > 0) {
|
||||
playlist[from] = urls;
|
||||
}
|
||||
}
|
||||
parse = data.parse || [];
|
||||
vod.vod_play_from = _.keys(playlist).join('$$$');
|
||||
let urls = _.values(playlist);
|
||||
let vod_play_url = [];
|
||||
for (const urlist of urls) {
|
||||
vod_play_url.push(urlist.join('#'));
|
||||
}
|
||||
vod.vod_play_url = vod_play_url.join('$$$');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
var parse = [];
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
try {
|
||||
if (id.indexOf('youku') >= 0 || id.indexOf('iqiyi') >= 0 || id.indexOf('v.qq.com') >= 0 || id.indexOf('pptv') >= 0 || id.indexOf('le.com') >= 0 || id.indexOf('1905.com') >= 0 || id.indexOf('mgtv') >= 0) {
|
||||
if (parse.length > 0) {
|
||||
for (let index = 0; index < parse.length; index++) {
|
||||
try {
|
||||
const p = parse[index];
|
||||
let res = await req(p + id, {
|
||||
headers: { 'user-agent': 'okhttp/4.1.0' },
|
||||
});
|
||||
var result = jsonParse(id, JSON.parse(res.content));
|
||||
if (result.url) {
|
||||
result.parse = 0;
|
||||
return JSON.stringify(result);
|
||||
}
|
||||
} catch (error) {}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (id.indexOf('jqq-') >= 0) {
|
||||
var jqqHeader = await request(url + '/jqqheader.json', null, null, true);
|
||||
var jqqHeaders = JSON.parse(jqqHeader);
|
||||
var ids = id.split('-');
|
||||
var jxJqq = await req('https://api.juquanquanapp.com/app/drama/detail?dramaId=' + ids[1] + '&episodeSid=' + ids[2] + '&quality=LD', { headers: jqqHeaders });
|
||||
var jqqInfo = JSON.parse(jxJqq.content);
|
||||
if (jqqInfo.data.playInfo.url) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
playUrl: '',
|
||||
url: jqqInfo.data.playInfo.url,
|
||||
});
|
||||
}
|
||||
}
|
||||
let res = await request(url + '/video.php', { url: id });
|
||||
var result = jsonParse(id, JSON.parse(res).data);
|
||||
if (result.url) {
|
||||
result.parse = 0;
|
||||
// demo of block hls ads
|
||||
if (/vip\.lz|hd\.lz/.test(result.url)) {
|
||||
result.url = await js2Proxy(true, siteType, siteKey, 'lzm3u8/' + base64Encode(result.url), {});
|
||||
}
|
||||
return JSON.stringify(result);
|
||||
}
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
playUrl: '',
|
||||
url: id,
|
||||
});
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
async function proxy(segments, headers) {
|
||||
let what = segments[0];
|
||||
let url = base64Decode(segments[1]);
|
||||
if (what == 'lzm3u8') {
|
||||
const resp = await req(url, {});
|
||||
let hls = resp.content;
|
||||
const jsBase = await js2Proxy(false, siteType, siteKey, 'lzm3u8/', {});
|
||||
const baseUrl = url.substr(0, url.lastIndexOf('/') + 1);
|
||||
console.log(hls.length);
|
||||
hls = hls.replace(/#EXT-X-DISCONTINUITY\r*\n*#EXTINF:6.433333,[\s\S]*?#EXT-X-DISCONTINUITY/, '');
|
||||
console.log(hls.length);
|
||||
hls = hls.replace(/(#EXT-X-KEY\S+URI=")(\S+)("\S+)/g, function (match, p1, p2, p3) {
|
||||
let up = (!p2.startsWith('http') ? baseUrl : '') + p2;
|
||||
return p1 + up + p3;
|
||||
});
|
||||
hls = hls.replace(/(#EXT-X-STREAM-INF:.*\n)(.*)/g, function (match, p1, p2) {
|
||||
let up = (!p2.startsWith('http') ? baseUrl : '') + p2;
|
||||
return p1 + jsBase + base64Encode(up);
|
||||
});
|
||||
hls = hls.replace(/(#EXTINF:.*\n)(.*)/g, function (match, p1, p2) {
|
||||
let up = (!p2.startsWith('http') ? baseUrl : '') + p2;
|
||||
return p1 + up;
|
||||
});
|
||||
return JSON.stringify({
|
||||
code: resp.code,
|
||||
content: hls,
|
||||
headers: resp.headers,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
code: 500,
|
||||
content: '',
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
let data = JSON.parse(await request(url + '/api.php/Search/getSearch', { key: wd, type_id: 0, p: 1 })).data;
|
||||
let videos = [];
|
||||
for (const vod of data.data) {
|
||||
videos.push({
|
||||
vod_id: vod.vod_id,
|
||||
vod_name: vod.vod_name,
|
||||
vod_pic: vod.vod_pic,
|
||||
vod_remarks: vod.vod_remarks || vod.vod_score || '',
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
function base64Encode(text) {
|
||||
return Crypto.enc.Base64.stringify(Crypto.enc.Utf8.parse(text));
|
||||
}
|
||||
|
||||
function base64Decode(text) {
|
||||
return Crypto.enc.Utf8.stringify(Crypto.enc.Base64.parse(text));
|
||||
}
|
||||
|
||||
const charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789';
|
||||
function randStr(len, withNum) {
|
||||
var _str = '';
|
||||
let containsNum = withNum === undefined ? true : withNum;
|
||||
for (var i = 0; i < len; i++) {
|
||||
let idx = _.random(0, containsNum ? charStr.length - 1 : charStr.length - 11);
|
||||
_str += charStr[idx];
|
||||
}
|
||||
return _str;
|
||||
}
|
||||
|
||||
function randDevice() {
|
||||
return {
|
||||
brand: 'Huawei',
|
||||
model: 'HUAWEI Mate 20',
|
||||
release: '10',
|
||||
buildId: randStr(3, false).toUpperCase() + _.random(11, 99) + randStr(1, false).toUpperCase(),
|
||||
};
|
||||
}
|
||||
|
||||
function formatPlayUrl(src, name) {
|
||||
return name
|
||||
.trim()
|
||||
.replaceAll(src, '')
|
||||
.replace(/<|>|《|》/g, '')
|
||||
.replace(/\$|#/g, ' ')
|
||||
.trim();
|
||||
}
|
||||
|
||||
function jsonParse(input, json) {
|
||||
try {
|
||||
let url = json.url ?? '';
|
||||
if (url.startsWith('//')) {
|
||||
url = 'https:' + url;
|
||||
}
|
||||
if (!url.startsWith('http')) {
|
||||
return {};
|
||||
}
|
||||
let headers = json['headers'] || {};
|
||||
let ua = (json['user-agent'] || '').trim();
|
||||
if (ua.length > 0) {
|
||||
headers['User-Agent'] = ua;
|
||||
}
|
||||
let referer = (json['referer'] || '').trim();
|
||||
if (referer.length > 0) {
|
||||
headers['Referer'] = referer;
|
||||
}
|
||||
_.keys(headers).forEach((hk) => {
|
||||
if (!headers[hk]) delete headers[hk];
|
||||
});
|
||||
return {
|
||||
header: headers,
|
||||
url: url,
|
||||
};
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
proxy: proxy,
|
||||
search: search,
|
||||
};
|
||||
}
|
173
0130/道长JS/cat/kuqimv_open.js
Normal file
173
0130/道长JS/cat/kuqimv_open.js
Normal file
@ -0,0 +1,173 @@
|
||||
// 修正:分类改静态 (网站频繁变动分类)
|
||||
import { load, _ } from "assets://js/lib/cat.js";
|
||||
|
||||
let key = "酷奇MV";
|
||||
let HOST = "https://www.kuqimv.com";
|
||||
let siteKey = "";
|
||||
let siteType = 0;
|
||||
const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36";
|
||||
|
||||
async function request(reqUrl, referer, mth, data, hd) {
|
||||
const headers = {
|
||||
"User-Agent": PC_UA,
|
||||
};
|
||||
if (referer) headers.referer = encodeURIComponent(referer);
|
||||
let res = await req(reqUrl, {
|
||||
method: mth || "get",
|
||||
headers: headers,
|
||||
data: data,
|
||||
postType: mth === "post" ? "form" : "",
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
var classes = [{ "type_id": "1", "type_name": "华语高清" }, { "type_id": "2", "type_name": "日韩精选" }, { "type_id": "3", "type_name": "欧美MV" }, { "type_id": "4", "type_name": "高清现场" }, { "type_id": "5", "type_name": "影视MV" }, { "type_id": "6", "type_name": "夜店视频" }, { "type_id": "7", "type_name": "车模视频" }, { "type_id": "8", "type_name": "热舞视频" }, { "type_id": "9", "type_name": "美女写真" }, { "type_id": "10", "type_name": "美女打碟" }];
|
||||
// const html = await request(HOST);
|
||||
// const $ = load(html);
|
||||
// const class_parse = $(".lei_fl > a[href*=play]");
|
||||
// const classes = [];
|
||||
// classes = _.map(class_parse, (cls) => {
|
||||
// const typeId = cls.attribs["href"];
|
||||
// typeId = typeId.substring(typeId.lastIndexOf("/") + 1).replace(".html", "");
|
||||
// return {
|
||||
// type_id: typeId,
|
||||
// type_name: cls.children[0].data,
|
||||
// };
|
||||
// });
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + "/play/9_1.html";
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $("div.mv_list > li");
|
||||
let videos = _.map(items, (it) => {
|
||||
const a = $(it).find("a:first")[0];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const singer = $($(it).find("div.singer")[0]).text().trim();
|
||||
const remarks = $($(it).find("span.lei_03")[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/play\/(.*).html/g, "$1"),
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎤" + singer + "|" + remarks || "",
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/play/" + tid + "_" + pg + ".html";
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $("div.mv_list > li");
|
||||
let videos = _.map(items, (it) => {
|
||||
const a = $(it).find("a:first")[0];
|
||||
const img = $(it).find("img:first")[0];
|
||||
const singer = $($(it).find("div.singer")[0]).text().trim();
|
||||
const remarks = $($(it).find("span.lei_03")[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/play\/(.*).html/g, "$1"),
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: "🎤" + singer + "|" + remarks || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("div.lei_page > a:contains(下一页)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: "",
|
||||
};
|
||||
const playlist = ["观看视频" + "$" + id];
|
||||
vod.vod_play_from = "道长在线";
|
||||
vod.vod_play_url = playlist.join("#");
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = HOST + "/skin/kuqimv/play.php";
|
||||
const ref = HOST + "/play/" + id + ".html";
|
||||
const pdata = { id: id };
|
||||
const playUrl = JSON.parse(await request(link, ref, "post", pdata)).url;
|
||||
const headers = {
|
||||
Referer: HOST,
|
||||
};
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
header: headers,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof pg == "undefined") pg = 1;
|
||||
const link = HOST + "/search.php?key=" + wd + "&pages=" + pg;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const items = $("div.video_list > li");
|
||||
let videos = _.map(items, (it) => {
|
||||
const a = $(it).find("a:first")[0];
|
||||
const singer = $($(it).find("div.singer")[0]).text().trim();
|
||||
const remarks = $($(it).find("span.lei_04")[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/play\/(.*).html/g, "$1"),
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: "https://www.kuqimv.com/static/images/cover/singer.jpg",
|
||||
vod_remarks: "🎤" + singer + "|" + remarks || "",
|
||||
};
|
||||
});
|
||||
const hasMore = $("div.lei_page > a:contains(>)").length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 20,
|
||||
total: 20 * pgCount,
|
||||
list: videos,
|
||||
land: 1,
|
||||
ratio: 1.78,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/lbgs_book_open.js
Normal file
1
0130/道长JS/cat/lbgs_book_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1CiARhsYmdzX29wZW4uanMsYXNzZXRzOi8vanMvbGliL2NhdC5qcxxfX2pzRXZhbFJldHVybgxDcnlwdG8KZGF5anMCXwZrZXkMZGV2aWNlDnNpdGVLZXkQc2l0ZVR5cGUUYXBwVmVyc2lvbgphcHBVQQ5hcHBEYXRhGG5hdGl2ZUVuY29kZQRwawp4bmFtZRhiYXNlNjRFbmNvZGUYYmFzZTY0RGVjb2RlGmZvcm1hdFBsYXlVcmwOY2hhclN0cg5yYW5kU3RyFHJhbmREZXZpY2UOcmVxdWVzdAhpbml0CGhvbWUOaG9tZVZvZAxpbWdVcmwQY2F0ZWdvcnkMZGV0YWlsCHBsYXkMc2VhcmNoDGxhb2JhaQoxLjEuN7AJSEJrWkZCdDZkMzU5ZHhGa1lYdDZjWEVaZjN4b0dSa1VHeFU0ZEgxd2MzMWVlSGg2VlZKRlVWcGRjd0JCQ0hCNFpYeDNkWFYyZFhsakFYVjBlSDEyZWxGemNYaGxmSEJBWjA1WlRGQk1BMngwVzFwc2RVSnhTbjVoWVQ1blNXOTNRRkpCZEY5RVRWSUVER0o3WlVwYVgxZE9iMkpCYkdCT1Uxd01ZQTlPZWt4a2NGUkdYQXAzWG1oakJWVkVjbUlBVDJoeEN3d0xTVjE2WVIwWE9CSjllRXRqZkc1eERuOFNVRzVjZmxwOVQwRlFYR0Z2WlZ3RGNRRmhaSFFIQ0ZSblpnQmlmbVlOWW5oaVJnTjNVRXhWZWtJT1dWSm5DMXR1ZkhVRVNraytaa3Q3YTJKcWJGZ0haMVpUWFhGWGJnQitaVVJ0U1dGelYxRi9YMUJGUmw1eVQyUmZjbnBFQWdOV1VYUUxjM2h3VlhCTVQyRk1XbkJSRFFOQllYUllRamdOZlhBQUcwUmRSR2hHYm1aTUFYZHdVMWRBUkVwNFF3TUNZVjE3ZjJGMUIxNTNjVmhXVjNKYVNRQnlSSDFrY2dKcVhuQk1FZ2hBQmdGK0NBSVNCM0JCUGxGdlgwcGZVRlZBZFcxK2FGTUpVVk5kZlhwYmNXdGxVMzVNVm5OamNBWkFYQTFxQ2tCTGRsbFRZVk5BQVdoZldtTkFUQXhqZG1wZ1gzVjBRWEYwZUg4NFVFTndkWFZsZUhReUh4UVpGQnh4ZW4wV2FHZDdlSEJ5Rkg5OGJ4VWZGQmtVemFiYWNkZWZnaGprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkCZQJhAnQCchhmcm9tQ2hhckNvZGUUY2hhckNvZGVBdAZlbmMMQmFzZTY0EnN0cmluZ2lmeQhVdGY4CnBhcnNlCHRyaW0UcmVwbGFjZUFsbA5yZXBsYWNlAiACbgxyYW5kb20MSHVhd2VpCmJyYW5kHEhVQVdFSSBNYXRlIDIwCm1vZGVsDnJlbGVhc2UWdG9VcHBlckNhc2UOYnVpbGRJZAZyZXEMbWV0aG9kFFVzZXItQWdlbnQYaHR0cF9yZWZlcmVyDlJlZmVyZXIOaGVhZGVycwhkYXRhCHBvc3QIZm9ybRBwb3N0VHlwZQ5jb250ZW50CHNrZXkKc3R5cGUKbG9jYWwOaXNFbXB0eRZ0b0xvd2VyQ2FzZQRpZEBEYWx2aWsvMi4xLjAgKExpbnV4OyBVOyBBbmRyb2lkIAQ7IA4gQnVpbGQvAikEdWE6KE1vemlsbGEvNS4wIChMaW51eDsgQW5kcm9pZCDEATsgd3YpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIFZlcnNpb24vNC4wIENocm9tZS82OC4wLjM0NDAuNzAgTW9iaWxlIFNhZmFyaS81MzcuMzYpVGh0dHBzOi8vbGFncy5vc3MtY24taGFuZ3pob3UuYWxpeXVuY3MuY29tLwouanNvbhgkNmMxY2VmNzhhZT0IcnNhWBJSU0EvUEtDUzECLwJvAmkCcxBqc29uX3VybBxjYXQvaW5kZXguanNvbgp0aXRsZQUGUnt8CHR5cGUFe3yLVwxyZWR1Y2UKdHlwZXMCdghzb3J0BZJjj14GaG90CHB1c2gF2J6kiwXtcOiVBd6PfY8Mc2VyaWFsBYxb034OdHlwZV9pZBJ0eXBlX25hbWUOZmlsdGVycxRzdGFydHNXaXRoCGh0dHAOaW1nX3VybAJwEmNhdF9saXN0Lwpib29rcw5ib29rX2lkEmJvb2tfbmFtZQZwaWMQYm9va19waWMYYm9va19yZW1hcmtzCHBhZ2UMc2Nyb2xsEnBhZ2Vjb3VudApsaW1pdAp0b3RhbAhsaXN0CmNvbnQvCmF1ZGlvCHRpbWUSYm9va195ZWFyEmJvb2tfYXJlYQx0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
|
1
0130/道长JS/cat/lbgs_open.js
Normal file
1
0130/道长JS/cat/lbgs_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1CiARhsYmdzX29wZW4uanMYLi9saWIvY2F0LmpzHF9fanNFdmFsUmV0dXJuDENyeXB0bwpkYXlqcwJfBmtleQxkZXZpY2UOc2l0ZUtleRBzaXRlVHlwZRRhcHBWZXJzaW9uCmFwcFVBDmFwcERhdGEYbmF0aXZlRW5jb2RlBHBrCnhuYW1lGGJhc2U2NEVuY29kZRhiYXNlNjREZWNvZGUaZm9ybWF0UGxheVVybA5jaGFyU3RyDnJhbmRTdHIUcmFuZERldmljZQ5yZXF1ZXN0CGluaXQIaG9tZQ5ob21lVm9kDGltZ1VybBBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gMbGFvYmFpCjEuMS43sAlIQmtaRkJ0NmQzNTlkeEZrWVh0NmNYRVpmM3hvR1JrVUd4VTRkSDF3YzMxZWVIaDZWVkpGVVZwZGN3QkJDSEI0Wlh4M2RYVjJkWGxqQVhWMGVIMTJlbEZ6Y1hobGZIQkFaMDVaVEZCTUEyeDBXMXBzZFVKeFNuNWhZVDVuU1c5M1FGSkJkRjlFVFZJRURHSjdaVXBhWDFkT2IySkJiR0JPVTF3TVlBOU9la3hrY0ZSR1hBcDNYbWhqQlZWRWNtSUFUMmh4Q3d3TFNWMTZZUjBYT0JKOWVFdGpmRzV4RG44U1VHNWNmbHA5VDBGUVhHRnZaVndEY1FGaFpIUUhDRlJuWmdCaWZtWU5ZbmhpUmdOM1VFeFZla0lPV1ZKbkMxdHVmSFVFU2trK1prdDdhMkpxYkZnSFoxWlRYWEZYYmdCK1pVUnRTV0Z6VjFGL1gxQkZSbDV5VDJSZmNucEVBZ05XVVhRTGMzaHdWWEJNVDJGTVduQlJEUU5CWVhSWVFqZ05mWEFBRzBSZFJHaEdibVpNQVhkd1UxZEFSRXA0UXdNQ1lWMTdmMkYxQjE1M2NWaFdWM0phU1FCeVJIMWtjZ0pxWG5CTUVnaEFCZ0YrQ0FJU0IzQkJQbEZ2WDBwZlVGVkFkVzErYUZNSlVWTmRmWHBiY1d0bFUzNU1Wbk5qY0FaQVhBMXFDa0JMZGxsVFlWTkFBV2hmV21OQVRBeGpkbXBnWDNWMFFYRjBlSDg0VUVOd2RYVmxlSFF5SHhRWkZCeHhlbjBXYUdkN2VIQnlGSDk4YnhVZkZCa1V6YWJhY2RlZmdoamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSEpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OQJlAmECdAJyGGZyb21DaGFyQ29kZRRjaGFyQ29kZUF0BmVuYwxCYXNlNjQSc3RyaW5naWZ5CFV0ZjgKcGFyc2UIdHJpbRRyZXBsYWNlQWxsDnJlcGxhY2UCIAJuDHJhbmRvbQxIdWF3ZWkKYnJhbmQcSFVBV0VJIE1hdGUgMjAKbW9kZWwOcmVsZWFzZRZ0b1VwcGVyQ2FzZQ5idWlsZElkBnJlcQxtZXRob2QUVXNlci1BZ2VudBhodHRwX3JlZmVyZXIOUmVmZXJlcg5oZWFkZXJzCGRhdGEIcG9zdAhmb3JtEHBvc3RUeXBlDmNvbnRlbnQIc2tleQpzdHlwZQpsb2NhbA5pc0VtcHR5FnRvTG93ZXJDYXNlBGlkQERhbHZpay8yLjEuMCAoTGludXg7IFU7IEFuZHJvaWQgBDsgDiBCdWlsZC8CKQR1YTooTW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIMQBOyB3dikgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgVmVyc2lvbi80LjAgQ2hyb21lLzY4LjAuMzQ0MC43MCBNb2JpbGUgU2FmYXJpLzUzNy4zNilUaHR0cHM6Ly9sYWdzLm9zcy1jbi1oYW5nemhvdS5hbGl5dW5jcy5jb20vCi5qc29uGCQ2YzFjZWY3OGFlPQhyc2FYElJTQS9QS0NTMQIvAm8CaQJzEGpzb25fdXJsHGNhdC9pbmRleC5qc29uCnRpdGxlBQZSe3wIdHlwZQV7fItXDHJlZHVjZQp0eXBlcwJ2CHNvcnQFkmOPXgZob3QIcHVzaAXYnqSLBe1w6JUF3o99jwxzZXJpYWwFjFvTfg50eXBlX2lkEnR5cGVfbmFtZQ5maWx0ZXJzFHN0YXJ0c1dpdGgIaHR0cA5pbWdfdXJsAnASY2F0X2xpc3QvCmJvb2tzDmJvb2tfaWQSYm9va19uYW1lBnBpYxBib29rX3BpYxhib29rX3JlbWFya3MIcGFnZQxzY3JvbGwScGFnZWNvdW50CmxpbWl0CnRvdGFsCGxpc3QKY29udC8KYXVkaW8IdGltZRJib29rX3llYXISYm9va19hcmVhDHRlbGxlchRib29r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
|
1
0130/道长JS/cat/lib/ali.js
Normal file
1
0130/道长JS/cat/lib/ali.js
Normal file
@ -0,0 +1 @@
|
||||
(function(c,d){const n=b,e=c();while(!![]){try{const f=-parseInt(n(0x148))/0x1+-parseInt(n(0x140))/0x2*(parseInt(n(0x145))/0x3)+parseInt(n(0x150))/0x4*(parseInt(n(0x14c))/0x5)+-parseInt(n(0x147))/0x6+-parseInt(n(0x13d))/0x7+parseInt(n(0x13c))/0x8+parseInt(n(0x13b))/0x9*(parseInt(n(0x142))/0xa);if(f===d)break;else e['push'](e['shift']());}catch(g){e['push'](e['shift']());}}}(a,0xaf4a3));import{_}from'./cat.js';import{log}from'./utils.js';import{initSome,setToken,setShareId,getVod,playerContent,playerContentByFlag}from'./ali_api.js';function a(){const r=['126jHersJ','8018976SyNpYU','7198947GYbEkJ','wGsFx','isEmpty','50HOYYaa','PIvCN','1745270xSfZmS','match','split','68196ySTEaL','trim','3359892YLzwvG','845051dhMcfo','ali\x20init:','MlDBF','xvRmD','4405TqvVPk','stringify','HyWVX','ali\x20init\x20ext:','1244NAvJeB','ewEMb'];a=function(){return r;};return a();}function b(c,d){const e=a();return b=function(f,g){f=f-0x13a;let h=e[f];return h;},b(c,d);}async function initAli(c){const o=b,d={'HyWVX':function(f,g){return f(g);},'PIvCN':o(0x149),'ewEMb':function(f,g){return f+g;},'xvRmD':o(0x14f)};let e=c['ext'];await d[o(0x14e)](log,d[o(0x141)]+typeof c),await initSome(),await d[o(0x14e)](setToken,e),await d[o(0x14e)](log,d[o(0x13a)](d[o(0x14b)],e));}async function detailContent(c){const p=b,d={'MlDBF':function(l,m){return l(m);}},e=/www.aliyundrive.com\/s\/([^\/]+)(\/folder\/([^\/]+))?/;let f=c[p(0x146)](),g=f[p(0x143)](e);if(_[p(0x13f)](g))return'';let h=g[0x1],i=g['length']==0x3?g[0x3]:'';await d[p(0x14a)](setShareId,h);let j=await getVod(f,i),k=JSON[p(0x14d)]({'list':[j]});return k;}async function playContent(c,d,e){const q=b,f={'wGsFx':function(i,j){return i==j;},'rAcPj':function(i,j,k){return i(j,k);}};let g=d[q(0x144)]('+'),h=f[q(0x13e)](c,'原画')?await playerContent(g):await f['rAcPj'](playerContentByFlag,g,c);return h;}export{initAli,detailContent,playContent};
|
1
0130/道长JS/cat/lib/ali_api.js
Normal file
1
0130/道长JS/cat/lib/ali_api.js
Normal file
File diff suppressed because one or more lines are too long
1
0130/道长JS/cat/lib/cat.js
Normal file
1
0130/道长JS/cat/lib/cat.js
Normal file
File diff suppressed because one or more lines are too long
1
0130/道长JS/cat/lib/hls.js
Normal file
1
0130/道长JS/cat/lib/hls.js
Normal file
@ -0,0 +1 @@
|
||||
let t={};function e(e){if(t.strictMode)throw e;t.silent||console.error(e.message)}function s(t,...s){for(const[i,n]of s.entries())n||e(new Error(`${t} : Failed at [${i}]`))}function i(...t){for(const[s,[i,n]]of t.entries())i&&(n||e(new Error(`Conditional Assert : Failed at [${s}]`)))}function n(...t){for(const[s,i]of t.entries())void 0===i&&e(new Error(`Param Check : Failed at [${s}]`))}function a(...t){for(const[s,[i,n]]of t.entries())i&&void 0===n&&e(new Error(`Conditional Param Check : Failed at [${s}]`))}function r(t){e(new Error(`Invalid Playlist : ${t}`))}function o(t,e=10){if("number"==typeof t)return t;const s=10===e?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(s)?0:s}function E(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));const e=new Uint8Array(t.length/2);for(let s=0;s<t.length;s+=2)e[s/2]=o(t.slice(s,s+2),16);return e}function T(t,s=0,i=t.length){i<=s&&e(new Error(`end must be larger than start : start=${s}, end=${i}`));const n=[];for(let e=s;e<i;e++)n.push(`0${(255&t[e]).toString(16).toUpperCase()}`.slice(-2));return`0x${n.join("")}`}function u(t,e,s=0){let i=-1;for(let n=0,a=0;n<t.length;n++)if(t[n]===e){if(a++===s)return[t.slice(0,n),t.slice(n+1)];i=n}return-1!==i?[t.slice(0,i),t.slice(i+1)]:[t]}function c(t){const e=[];let s=!1;for(const i of t)"-"!==i&&"_"!==i?s?(e.push(i.toUpperCase()),s=!1):e.push(i.toLowerCase()):s=!0;return e.join("")}function l(t){return`${t.getUTCFullYear()}-${("0"+(t.getUTCMonth()+1)).slice(-2)}-${("0"+t.getUTCDate()).slice(-2)}T${("0"+t.getUTCHours()).slice(-2)}:${("0"+t.getUTCMinutes()).slice(-2)}:${("0"+t.getUTCSeconds()).slice(-2)}.${("00"+t.getUTCMilliseconds()).slice(-3)}Z`}function h(e={}){t=Object.assign(t,e)}function X(){return Object.assign({},t)}class p{constructor({type:t,uri:e,groupId:s,language:a,assocLanguage:r,name:o,isDefault:E,autoselect:T,forced:u,instreamId:c,characteristics:l,channels:h}){n(t,s,o),i(["SUBTITLES"===t,e],["CLOSED-CAPTIONS"===t,c],["CLOSED-CAPTIONS"===t,!e],[u,"SUBTITLES"===t]),this.type=t,this.uri=e,this.groupId=s,this.language=a,this.assocLanguage=r,this.name=o,this.isDefault=E,this.autoselect=T,this.forced=u,this.instreamId=c,this.characteristics=l,this.channels=h}}class I{constructor({uri:t,isIFrameOnly:e=!1,bandwidth:s,averageBandwidth:i,score:a,codecs:r,resolution:o,frameRate:E,hdcpLevel:T,allowedCpc:u,videoRange:c,stableVariantId:l,programId:h,audio:X=[],video:p=[],subtitles:I=[],closedCaptions:N=[],currentRenditions:d={audio:0,video:0,subtitles:0,closedCaptions:0}}){n(t,s),this.uri=t,this.isIFrameOnly=e,this.bandwidth=s,this.averageBandwidth=i,this.score=a,this.codecs=r,this.resolution=o,this.frameRate=E,this.hdcpLevel=T,this.allowedCpc=u,this.videoRange=c,this.stableVariantId=l,this.programId=h,this.audio=X,this.video=p,this.subtitles=I,this.closedCaptions=N,this.currentRenditions=d}}class N{constructor({id:t,value:e,uri:i,language:a}){n(t,e||i),s("SessionData cannot have both value and uri, shoud be either.",!(e&&i)),this.id=t,this.value=e,this.uri=i,this.language=a}}class d{constructor({method:t,uri:e,iv:s,format:r,formatVersion:o}){n(t),a(["NONE"!==t,e]),i(["NONE"===t,!(e||s||r||o)]),this.method=t,this.uri=e,this.iv=s,this.format=r,this.formatVersion=o}}class A{constructor({hint:t=!1,uri:e,mimeType:s,byterange:i}){n(e),this.hint=t,this.uri=e,this.mimeType=s,this.byterange=i}}class S{constructor({id:t,classId:e,start:s,end:r,duration:o,plannedDuration:E,endOnNext:T,attributes:u={}}){n(t),a([!0===T,e]),i([r,s],[r,s<=r],[o,o>=0],[E,E>=0]),this.id=t,this.classId=e,this.start=s,this.end=r,this.duration=o,this.plannedDuration=E,this.endOnNext=T,this.attributes=u}}class f{constructor({type:t,duration:e,tagName:s,value:i}){n(t),a(["OUT"===t,e]),a(["RAW"===t,s]),this.type=t,this.duration=e,this.tagName=s,this.value=i}}class R{constructor(t){n(t),this.type=t}}class m extends R{constructor({isMasterPlaylist:t,uri:e,version:s,independentSegments:i=!1,start:a,source:r}){super("playlist"),n(t),this.isMasterPlaylist=t,this.uri=e,this.version=s,this.independentSegments=i,this.start=a,this.source=r}}class g extends m{constructor(t={}){super(Object.assign(Object.assign({},t),{isMasterPlaylist:!0}));const{variants:e=[],currentVariant:s,sessionDataList:i=[],sessionKeyList:n=[]}=t;this.variants=e,this.currentVariant=s,this.sessionDataList=i,this.sessionKeyList=n}}class O extends m{constructor(t={}){super(Object.assign(Object.assign({},t),{isMasterPlaylist:!1}));const{targetDuration:e,mediaSequenceBase:s=0,discontinuitySequenceBase:i=0,endlist:n=!1,playlistType:a,isIFrame:r,segments:o=[],prefetchSegments:E=[],lowLatencyCompatibility:T,partTargetDuration:u,renditionReports:c=[],skip:l=0,hash:h}=t;this.targetDuration=e,this.mediaSequenceBase=s,this.discontinuitySequenceBase=i,this.endlist=n,this.playlistType=a,this.isIFrame=r,this.segments=o,this.prefetchSegments=E,this.lowLatencyCompatibility=T,this.partTargetDuration=u,this.renditionReports=c,this.skip=l,this.hash=h}}class D extends R{constructor({uri:t,mimeType:e,data:s,duration:i,title:n,byterange:a,discontinuity:r,mediaSequenceNumber:o=0,discontinuitySequence:E=0,key:T,map:u,programDateTime:c,dateRange:l,markers:h=[],parts:X=[]}){super("segment"),this.uri=t,this.mimeType=e,this.data=s,this.duration=i,this.title=n,this.byterange=a,this.discontinuity=r,this.mediaSequenceNumber=o,this.discontinuitySequence=E,this.key=T,this.map=u,this.programDateTime=c,this.dateRange=l,this.markers=h,this.parts=X}}class P extends R{constructor({hint:t=!1,uri:e,duration:s,independent:i,byterange:a,gap:r}){super("part"),n(e),this.hint=t,this.uri=e,this.duration=s,this.independent=i,this.duration=s,this.byterange=a,this.gap=r}}class y extends R{constructor({uri:t,discontinuity:e,mediaSequenceNumber:s=0,discontinuitySequence:i=0,key:a}){super("prefetch"),n(t),this.uri=t,this.discontinuity=e,this.mediaSequenceNumber=s,this.discontinuitySequence=i,this.key=a}}class C{constructor({uri:t,lastMSN:e,lastPart:s}){n(t),this.uri=t,this.lastMSN=e,this.lastPart=s}}var U=Object.freeze({__proto__:null,Rendition:p,Variant:I,SessionData:N,Key:d,MediaInitializationSection:A,DateRange:S,SpliceInfo:f,Playlist:m,MasterPlaylist:g,MediaPlaylist:O,Segment:D,PartialSegment:P,PrefetchSegment:y,RenditionReport:C});function M(t){return function(t,e=" "){return t?(t=t.trim()," "===e||(t.startsWith(e)&&(t=t.slice(1)),t.endsWith(e)&&(t=t.slice(0,-1))),t):t}(t,'"')}function b(t){const e=u(t,",");return{duration:o(e[0]),title:decodeURIComponent(escape(e[1]))}}function L(t){const e=u(t,"@");return{length:o(e[0]),offset:e[1]?o(e[1]):-1}}function v(t){const e=u(t,"x");return{width:o(e[0]),height:o(e[1])}}function $(t){const e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",s=t.split(",");0===s.length&&r(e);const i=[];for(const t of s){const[s,n]=u(t,":");s&&n?i.push({format:s,cpcList:n.split("/")}):r(e)}return i}function Y(t){const e=E(t);return 16!==e.length&&r("IV must be a 128-bit unsigned integer"),e}function F(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function G(t){const e={};for(const i of function(t){const e=[];let s=!0,i=0;const n=[];for(let a=0;a<t.length;a++){const r=t[a];s&&","===r?(e.push(t.slice(i,a).trim()),i=a+1):'"'!==r&&"'"!==r||(s?(n.push(r),s=!1):r===n.at(-1)?(n.pop(),s=!0):n.push(r))}return e.push(t.slice(i).trim()),e}(t)){const[t,n]=u(i,"="),a=M(n);switch(t){case"URI":e[t]=a;break;case"START-DATE":case"END-DATE":e[t]=new Date(a);break;case"IV":e[t]=Y(a);break;case"BYTERANGE":e[t]=L(a);break;case"RESOLUTION":e[t]=v(a);break;case"ALLOWED-CPC":e[t]=$(a);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[t]="YES"===a;break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[t]=o(a);break;default:t.startsWith("SCTE35-")?e[t]=E(a):t.startsWith("X-")?e[t]=(s=n).startsWith('"')?M(s):s.startsWith("0x")||s.startsWith("0X")?E(s):o(s):("VIDEO-RANGE"===t&&"SDR"!==a&&"HLG"!==a&&"PQ"!==a&&r(`VIDEO-RANGE: unknown value "${a}"`),e[t]=a)}}var s;return e}function V(){r("The file contains both media and master playlist tags.")}function w(t,e,s){const i=function({attributes:t}){return new p({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}(e),n=t[c(s)],a=function(t,e){let s=!1;for(const i of t){if(i.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";i.isDefault&&(s=!0)}return s&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}(n,i);a&&r(a),n.push(i),i.isDefault&&(t.currentRenditions[c(s)]=n.length-1)}function B(t,e,s,i,n){const a=new I({uri:s,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(const s of t)if("EXT-X-MEDIA"===s.name){const t=s.attributes,i=t.TYPE;if(i&&t["GROUP-ID"]||r("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[i]===t["GROUP-ID"]&&(w(a,s,i),"CLOSED-CAPTIONS"===i))for(const{instreamId:t}of a.closedCaptions)if(t&&t.startsWith("SERVICE")&&n.compatibleVersion<7){n.compatibleVersion=7;break}}return function(t,e,s){for(const i of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])"CLOSED-CAPTIONS"===i&&"NONE"===t[i]?(s.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[i]&&!e[c(i)].some((e=>e.groupId===t[i]))&&r(`${i} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${i}.`)}(e,a,n),a.isIFrameOnly=i,a}function H(t,e){if(t.method!==e.method)return!1;if(t.uri!==e.uri)return!1;if(t.iv){if(!e.iv)return!1;if(t.iv.length!==e.iv.length)return!1;for(let s=0;s<t.iv.length;s++)if(t.iv[s]!==e.iv[s])return!1}else if(e.iv)return!1;return t.format===e.format&&t.formatVersion===e.formatVersion}function K(t,e,s,i,n,a,o){const E=new D({uri:e,mediaSequenceNumber:n,discontinuitySequence:a});let T=!1,u=!1;for(let e=s;e<=i;e++){const{name:s,value:i,attributes:n}=t[e];if("EXTINF"===s)!Number.isInteger(i.duration)&&o.compatibleVersion<3&&(o.compatibleVersion=3),Math.round(i.duration)>o.targetDuration&&r("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),E.duration=i.duration,E.title=i.title;else if("EXT-X-BYTERANGE"===s)o.compatibleVersion<4&&(o.compatibleVersion=4),E.byterange=i;else if("EXT-X-DISCONTINUITY"===s)E.parts.length>0&&r("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),E.discontinuity=!0;else if("EXT-X-KEY"===s)E.parts.length>0&&r("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),F(o,n),E.key=new d({method:n.METHOD,uri:n.URI,iv:n.IV,format:n.KEYFORMAT,formatVersion:n.KEYFORMATVERSIONS});else if("EXT-X-MAP"===s)E.parts.length>0&&r("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),o.compatibleVersion<5&&(o.compatibleVersion=5),o.hasMap=!0,E.map=new A({uri:n.URI,byterange:n.BYTERANGE});else if("EXT-X-PROGRAM-DATE-TIME"===s)E.programDateTime=i;else if("EXT-X-DATERANGE"===s){const t={};for(const e of Object.keys(n))(e.startsWith("SCTE35-")||e.startsWith("X-"))&&(t[e]=n[e]);E.dateRange=new S({id:n.ID,classId:n.CLASS,start:n["START-DATE"],end:n["END-DATE"],duration:n.DURATION,plannedDuration:n["PLANNED-DURATION"],endOnNext:n["END-ON-NEXT"],attributes:t})}else if("EXT-X-CUE-OUT"===s)E.markers.push(new f({type:"OUT",duration:n&&n.DURATION||i}));else if("EXT-X-CUE-IN"===s)E.markers.push(new f({type:"IN"}));else if("EXT-X-CUE-OUT-CONT"===s||"EXT-X-CUE"===s||"EXT-OATCLS-SCTE35"===s||"EXT-X-ASSET"===s||"EXT-X-SCTE35"===s)E.markers.push(new f({type:"RAW",tagName:s,value:i}));else if("EXT-X-PRELOAD-HINT"!==s||n.TYPE)if("EXT-X-PRELOAD-HINT"===s&&"PART"===n.TYPE&&u)r("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if("EXT-X-PART"!==s&&"EXT-X-PRELOAD-HINT"!==s||n.URI){if("EXT-X-PRELOAD-HINT"===s&&"MAP"===n.TYPE)T&&r("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),T=!0,o.hasMap=!0,E.map=new A({hint:!0,uri:n.URI,byterange:{length:n["BYTERANGE-LENGTH"],offset:n["BYTERANGE-START"]||0}});else if("EXT-X-PART"===s||"EXT-X-PRELOAD-HINT"===s&&"PART"===n.TYPE){"EXT-X-PART"!==s||n.DURATION||r("EXT-X-PART: DURATION attribute is mandatory"),"EXT-X-PRELOAD-HINT"===s&&(u=!0);const t=new P({hint:"EXT-X-PRELOAD-HINT"===s,uri:n.URI,byterange:"EXT-X-PART"===s?n.BYTERANGE:{length:n["BYTERANGE-LENGTH"],offset:n["BYTERANGE-START"]||0},duration:n.DURATION,independent:n.INDEPENDENT,gap:n.GAP});E.parts.push(t)}}else r("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else r("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory")}return E}function k(t,e,s,i,n,a,o){const E=new y({uri:e,mediaSequenceNumber:n,discontinuitySequence:a});for(let e=s;e<=i;e++){const{name:s,attributes:i}=t[e];"EXTINF"===s?r("A prefetch segment must not be advertised with an EXTINF tag."):"EXT-X-DISCONTINUITY"===s?r("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):"EXT-X-PREFETCH-DISCONTINUITY"===s?E.discontinuity=!0:"EXT-X-KEY"===s?(F(o,i),E.key=new d({method:i.METHOD,uri:i.URI,iv:i.IV,format:i.KEYFORMAT,formatVersion:i.KEYFORMATVERSIONS})):"EXT-X-MAP"===s&&r("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return E}function W(t,e){var s;const i=new O;let n=-1,a=0,o=!1,E=!1,T=0,u=null,c=null,l=!1;for(const[s,h]of t.entries()){const{name:X,value:p,attributes:I,category:N}=h;if("Segment"!==N){if("EXT-X-VERSION"===X)void 0===i.version?i.version=p:r("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if("EXT-X-TARGETDURATION"===X)i.targetDuration=e.targetDuration=p;else if("EXT-X-MEDIA-SEQUENCE"===X)i.segments.length>0&&r("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i.mediaSequenceBase=a=p;else if("EXT-X-DISCONTINUITY-SEQUENCE"===X)i.segments.length>0&&r("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),o&&r("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),i.discontinuitySequenceBase=T=p;else if("EXT-X-ENDLIST"===X)i.endlist=!0;else if("EXT-X-PLAYLIST-TYPE"===X)i.playlistType=p;else if("EXT-X-I-FRAMES-ONLY"===X)e.compatibleVersion<4&&(e.compatibleVersion=4),i.isIFrame=!0;else if("EXT-X-INDEPENDENT-SEGMENTS"===X)i.independentSegments&&r("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),i.independentSegments=!0;else if("EXT-X-START"===X)i.start&&r("EXT-X-START tag MUST NOT appear more than once in a Playlist"),"number"!=typeof I["TIME-OFFSET"]&&r("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),i.start={offset:I["TIME-OFFSET"],precise:I.PRECISE||!1};else if("EXT-X-SERVER-CONTROL"===X)I["CAN-BLOCK-RELOAD"]||r("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),i.lowLatencyCompatibility={canBlockReload:I["CAN-BLOCK-RELOAD"],canSkipUntil:I["CAN-SKIP-UNTIL"],holdBack:I["HOLD-BACK"],partHoldBack:I["PART-HOLD-BACK"]};else if("EXT-X-PART-INF"===X)I["PART-TARGET"]||r("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),i.partTargetDuration=I["PART-TARGET"];else if("EXT-X-RENDITION-REPORT"===X)I.URI||r("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),0===I.URI.search(/^[a-z]+:/)&&r("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),i.renditionReports.push(new C({uri:I.URI,lastMSN:I["LAST-MSN"],lastPart:I["LAST-PART"]}));else if("EXT-X-SKIP"===X)I["SKIPPED-SEGMENTS"]||r("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),i.skip=I["SKIPPED-SEGMENTS"],a+=i.skip;else if("EXT-X-PREFETCH"===X){const r=k(t,p,-1===n?s:n,s-1,a++,T,e);r&&(r.discontinuity&&(r.discontinuitySequence++,T=r.discontinuitySequence),r.key?u=r.key:r.key=u,i.prefetchSegments.push(r)),E=!0,n=-1}else if("string"==typeof h){-1===n&&r("A URI line is not preceded by any segment tags"),i.targetDuration||r("The EXT-X-TARGETDURATION tag is REQUIRED"),E&&r("These segments must appear after all complete segments.");const o=K(t,h,n,s-1,a++,T,e);o&&([T,u,c]=q(i,o,T,u,c),!l&&o.parts.length>0&&(l=!0)),n=-1}}else-1===n&&(n=s),"EXT-X-DISCONTINUITY"===X&&(o=!0)}if(-1!==n){const o=K(t,"",n,t.length-1,a++,T,e);if(o){const{parts:t}=o;t.length>0&&!i.endlist&&!(null===(s=t.at(-1))||void 0===s?void 0:s.hint)&&r("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),q(i,o,u,c),!l&&o.parts.length>0&&(l=!0)}}return function(t){const e=new Map,s=new Map;let i=!1,n=!1;for(let a=t.length-1;a>=0;a--){const{programDateTime:o,dateRange:E}=t[a];if(o&&(n=!0),E&&E.start){i=!0,E.endOnNext&&(E.end||E.duration)&&r("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");const t=E.start.getTime(),n=E.duration||0;E.end&&E.duration&&t+1e3*n!==E.end.getTime()&&r("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),E.endOnNext&&(E.end=e.get(E.classId)),e.set(E.classId,E.start);const a=E.end?E.end.getTime():E.start.getTime()+1e3*(E.duration||0),o=s.get(E.classId);if(o){for(const e of o)(e.start<=t&&e.end>t||e.start>=t&&e.start<a)&&r("DATERANGE tags with the same CLASS should not overlap");o.push({start:t,end:a})}else E.classId&&s.set(E.classId,[{start:t,end:a}])}}i&&!n&&r("If a Playlist contains an EXT-X-DATERANGE tag, it MUST also contain at least one EXT-X-PROGRAM-DATE-TIME tag.")}(i.segments),i.lowLatencyCompatibility&&function({lowLatencyCompatibility:t,targetDuration:e,partTargetDuration:s,segments:i,renditionReports:n},a){const{canSkipUntil:o,holdBack:E,partHoldBack:T}=t;o<6*e&&r("The Skip Boundary must be at least six times the EXT-X-TARGETDURATION.");E<3*e&&r("HOLD-BACK must be at least three times the EXT-X-TARGETDURATION.");if(a){void 0===s&&r("EXT-X-PART-INF is required if a Playlist contains one or more EXT-X-PART tags"),void 0===T&&r("EXT-X-PART: PART-HOLD-BACK attribute is mandatory"),T<s&&r("PART-HOLD-BACK must be at least PART-TARGET");for(const[t,{parts:e}]of i.entries()){e.length>0&&t<i.length-3&&r("Remove EXT-X-PART tags from the Playlist after they are greater than three target durations from the end of the Playlist.");for(const[t,{duration:i}]of e.entries())void 0!==i&&(i>s&&r("PART-TARGET is the maximum duration of any Partial Segment"),t<e.length-1&&i<.85*s&&r("All Partial Segments except the last part of a segment must have a duration of at least 85% of PART-TARGET"))}}for(const t of n){const e=i.at(-1);null!==t.lastMSN&&void 0!==t.lastMSN||(t.lastMSN=e.mediaSequenceNumber),(null===t.lastPart||void 0===t.lastPart)&&e.parts.length>0&&(t.lastPart=e.parts.length-1)}}(i,l),i}function q(t,e,s,i,n){const{discontinuity:a,key:o,map:E,byterange:T,uri:u}=e;if(a&&(e.discontinuitySequence=s+1),o||(e.key=i),E||(e.map=n),T&&-1===T.offset){const{segments:e}=t;if(e.length>0){const t=e.at(-1);t.byterange&&t.uri===u?T.offset=t.byterange.offset+t.byterange.length:r("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else r("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function x(t,e){const[s,i]=function(t){const e=t.indexOf(":");return-1===e?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}(t),n=function(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}(s);if(function(t,e){if("Segment"===t||"MediaPlaylist"===t)return void 0===e.isMasterPlaylist?void(e.isMasterPlaylist=!1):void(e.isMasterPlaylist&&V());if("MasterPlaylist"===t){if(void 0===e.isMasterPlaylist)return void(e.isMasterPlaylist=!0);!1===e.isMasterPlaylist&&V()}}(n,e),"Unknown"===n)return null;"MediaPlaylist"===n&&"EXT-X-RENDITION-REPORT"!==s&&"EXT-X-PREFETCH"!==s&&(e.hash[s]&&r("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[s]=!0);const[a,E]=function(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[o(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,G(e)]:[o(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,G(e)];case"EXTINF":return[b(e),null];case"EXT-X-BYTERANGE":return[L(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];default:return[e,null]}}(s,i);return{name:s,category:n,value:a,attributes:E}}function j(t,e){let s;return e.isMasterPlaylist?s=function(t,e){const s=new g;let i=!1;for(const[n,{name:a,value:o,attributes:E}]of t.entries())if("EXT-X-VERSION"===a)s.version=o;else if("EXT-X-STREAM-INF"===a){const a=t[n+1];("string"!=typeof a||a.startsWith("#EXT"))&&r("EXT-X-STREAM-INF must be followed by a URI line");const o=B(t,E,a,!1,e);o&&("number"==typeof o.score&&(i=!0,o.score<0&&r("SCORE attribute on EXT-X-STREAM-INF must be positive decimal-floating-point number.")),s.variants.push(o))}else if("EXT-X-I-FRAME-STREAM-INF"===a){const i=B(t,E,E.URI,!0,e);i&&s.variants.push(i)}else if("EXT-X-SESSION-DATA"===a){const t=new N({id:E["DATA-ID"],value:E.VALUE,uri:E.URI,language:E.LANGUAGE});s.sessionDataList.some((e=>e.id===t.id&&e.language===t.language))&&r("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),s.sessionDataList.push(t)}else if("EXT-X-SESSION-KEY"===a){"NONE"===E.METHOD&&r("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");const t=new d({method:E.METHOD,uri:E.URI,iv:E.IV,format:E.KEYFORMAT,formatVersion:E.KEYFORMATVERSIONS});s.sessionKeyList.some((e=>H(e,t)))&&r("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),F(e,E),s.sessionKeyList.push(t)}else"EXT-X-INDEPENDENT-SEGMENTS"===a?(s.independentSegments&&r("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),s.independentSegments=!0):"EXT-X-START"===a&&(s.start&&r("EXT-X-START tag MUST NOT appear more than once in a Playlist"),"number"!=typeof E["TIME-OFFSET"]&&r("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),s.start={offset:E["TIME-OFFSET"],precise:E.PRECISE||!1});if(i)for(const t of s.variants)"number"!=typeof t.score&&r("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(const t of s.variants)t.closedCaptions.length>0&&r("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return s}(t,e):(s=W(t,e),!s.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!s.version||s.version<e.compatibleVersion)&&r(`EXT-X-VERSION needs to be ${e.compatibleVersion} or higher.`),s}function Q(t){const e={version:void 0,isMasterPlaylist:void 0,hasMap:!1,targetDuration:0,compatibleVersion:1,isClosedCaptionsNone:!1,hash:{}},s=function(t,e){const s=[];for(const i of t.split("\n")){const t=i.trim();if(t)if(t.startsWith("#")){if(t.startsWith("#EXT")){const i=x(t,e);i&&s.push(i)}}else s.push(t)}return 0!==s.length&&"EXTM3U"===s[0].name||r("The EXTM3U tag MUST be the first line."),s}(t,e),i=j(s,e);return i.source=t,i}const _=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],z=["#EXT-X-MEDIA"];class Z extends Array{constructor(t){super(),this.baseUri=t}push(...t){for(const e of t)if(e.startsWith("#"))if(_.some((t=>e.startsWith(t))))super.push(e);else{if(this.includes(e)){if(z.some((t=>e.startsWith(t))))continue;r(`Redundant item (${e})`)}super.push(e)}else super.push(e);return this.length}}function J(t,e){let s=1e3;e&&(s=Math.pow(10,e));const i=Math.round(t*s)/s;return e?i.toFixed(e):i}function tt(t){const e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function et(t,e){const s=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",i=[`METHOD=${t.method}`];return t.uri&&i.push(`URI="${t.uri}"`),t.iv&&(16!==t.iv.length&&r("IV must be a 128-bit unsigned integer"),i.push(`IV=${T(t.iv)}`)),t.format&&i.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&i.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${s}:${i.join(",")}`}function st(t,e){const s=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",i=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&i.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&i.push(`URI="${e.uri}"`),e.codecs&&i.push(`CODECS="${e.codecs}"`),e.resolution&&i.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&i.push(`FRAME-RATE=${J(e.frameRate,3)}`),e.hdcpLevel&&i.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){i.push(`AUDIO="${e.audio[0].groupId}"`);for(const s of e.audio)t.push(it(s))}if(e.video.length>0){i.push(`VIDEO="${e.video[0].groupId}"`);for(const s of e.video)t.push(it(s))}if(e.subtitles.length>0){i.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(const s of e.subtitles)t.push(it(s))}if(X().allowClosedCaptionsNone&&0===e.closedCaptions.length)i.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){i.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(const s of e.closedCaptions)t.push(it(s))}if(e.score&&i.push(`SCORE=${e.score}`),e.allowedCpc){const t=[];for(const{format:s,cpcList:i}of e.allowedCpc)t.push(`${s}:${i.join("/")}`);i.push(`ALLOWED-CPC="${t.join(",")}"`)}e.videoRange&&i.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&i.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&i.push(`PROGRAM-ID=${e.programId}`),t.push(`${s}:${i.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function it(t){const e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return void 0!==t.isDefault&&e.push("DEFAULT="+(t.isDefault?"YES":"NO")),void 0!==t.autoselect&&e.push("AUTOSELECT="+(t.autoselect?"YES":"NO")),void 0!==t.forced&&e.push("FORCED="+(t.forced?"YES":"NO")),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function nt(t,e,s,i,n=1,a=null){let r=!1,o="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){const i=et(e.key);i!==s&&(t.push(i),s=i)}if(e.map){const s=function(t){const e=[`URI="${t.uri}"`];t.byterange&&e.push(`BYTERANGE="${at(t.byterange)}"`);return`#EXT-X-MAP:${e.join(",")}`}(e.map);s!==i&&(t.push(s),i=s)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${l(e.programDateTime)}`),e.dateRange&&t.push(function(t){const e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${l(t.start)}"`);t.end&&e.push(`END-DATE="${l(t.end)}"`);t.duration&&e.push(`DURATION=${t.duration}`);t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`);t.classId&&e.push(`CLASS="${t.classId}"`);t.endOnNext&&e.push("END-ON-NEXT=YES");for(const s of Object.keys(t.attributes))s.startsWith("X-")?"number"==typeof t.attributes[s]?e.push(`${s}=${t.attributes[s]}`):e.push(`${s}="${t.attributes[s]}"`):s.startsWith("SCTE35-")&&e.push(`${s}=${T(t.attributes[s])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}(e.dateRange)),e.markers.length>0&&(o=function(t,e){let s="";for(const i of e)if("OUT"===i.type)s="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${i.duration}`);else if("IN"===i.type)s="IN",t.push("#EXT-X-CUE-IN");else if("RAW"===i.type){const e=i.value?`:${i.value}`:"";t.push(`#${i.tagName}${e}`)}return s}(t,e.markers)),e.parts.length>0&&(r=function(t,e){let s=!1;for(const i of e)if(i.hint){const e=[];if(e.push("TYPE=PART",`URI="${i.uri}"`),i.byterange){const{offset:t,length:s}=i.byterange;e.push(`BYTERANGE-START=${t}`),s&&e.push(`BYTERANGE-LENGTH=${s}`)}t.push(`#EXT-X-PRELOAD-HINT:${e.join(",")}`),s=!0}else{const e=[];e.push(`DURATION=${i.duration}`,`URI="${i.uri}"`),i.byterange&&e.push(`BYTERANGE=${at(i.byterange)}`),i.independent&&e.push("INDEPENDENT=YES"),i.gap&&e.push("GAP=YES"),t.push(`#EXT-X-PART:${e.join(",")}`)}return s}(t,e.parts)),r)return[s,i];const E=n<3?Math.round(e.duration):J(e.duration,function(t){const e=t.toString(10),s=e.indexOf(".");return-1===s?0:e.length-s-1}(e.duration));return t.push(`#EXTINF:${E},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${at(e.byterange)}`),null!=a?Array.prototype.push.call(t,a(e)):Array.prototype.push.call(t,`${e.uri}`),[s,i,o]}function at({offset:t,length:e}){return`${e}@${t}`}function rt(t,e=null){n(t),s("Not a playlist","playlist"===t.type);const i=new Z(t.uri);return i.push("#EXTM3U"),t.version&&i.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&i.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&i.push(`#EXT-X-START:TIME-OFFSET=${J(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?function(t,e){for(const s of e.sessionDataList)t.push(tt(s));for(const s of e.sessionKeyList)t.push(et(s,!0));for(const s of e.variants)st(t,s)}(i,t):function(t,e,s=null){let i="",n="",a=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){const{canBlockReload:s,canSkipUntil:i,holdBack:n,partHoldBack:a}=e.lowLatencyCompatibility,r=[];r.push("CAN-BLOCK-RELOAD="+(s?"YES":"NO")),void 0!==i&&r.push(`CAN-SKIP-UNTIL=${i}`),void 0!==n&&r.push(`HOLD-BACK=${n}`),void 0!==a&&r.push(`PART-HOLD-BACK=${a}`),t.push(`#EXT-X-SERVER-CONTROL:${r.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(const r of e.segments){let o="";[i,n,o]=nt(t,r,i,n,e.version,s),"OUT"===o?a=!0:"IN"===o&&a&&(a=!1)}"VOD"===e.playlistType&&a&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&r("The server must deliver no more than two prefetch segments");for(const s of e.prefetchSegments)s.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${s.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(const s of e.renditionReports){const e=[];e.push(`URI="${s.uri}"`,`LAST-MSN=${s.lastMSN}`),void 0!==s.lastPart&&e.push(`LAST-PART=${s.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${e.join(",")}`)}}(i,t,e),i.join("\n")}export{X as getOptions,Q as parse,h as setOptions,rt as stringify,U as types};
|
1
0130/道长JS/cat/lib/similarity.js
Normal file
1
0130/道长JS/cat/lib/similarity.js
Normal file
@ -0,0 +1 @@
|
||||
function compareTwoStrings(first,second){if((first=first.replace(/\s+/g,""))===(second=second.replace(/\s+/g,"")))return 1;if(first.length<2||second.length<2)return 0;var firstBigrams=new Map;for(let i=0;i<first.length-1;i++){var bigram=first.substring(i,i+2),count=firstBigrams.has(bigram)?firstBigrams.get(bigram)+1:1;firstBigrams.set(bigram,count)}let intersectionSize=0;for(let i=0;i<second.length-1;i++){const bigram=second.substring(i,i+2),count=firstBigrams.has(bigram)?firstBigrams.get(bigram):0;0<count&&(firstBigrams.set(bigram,count-1),intersectionSize++)}return 2*intersectionSize/(first.length+second.length-2)}function findBestMatch(mainString,targetStrings){var ratings=[];let bestMatchIndex=0;for(let i=0;i<targetStrings.length;i++){var currentTargetString=targetStrings[i],currentRating=compareTwoStrings(mainString,currentTargetString);ratings.push({target:currentTargetString,rating:currentRating}),currentRating>ratings[bestMatchIndex].rating&&(bestMatchIndex=i)}return{ratings:ratings,bestMatch:ratings[bestMatchIndex],bestMatchIndex:bestMatchIndex}}function lcs(str1,str2){if(!str1||!str2)return{length:0,sequence:"",offset:0};for(var sequence="",str1Length=str1.length,str2Length=str2.length,num=new Array(str1Length),maxlen=0,lastSubsBegin=0,i=0;i<str1Length;i++){for(var subArray=new Array(str2Length),j=0;j<str2Length;j++)subArray[j]=0;num[i]=subArray}for(var thisSubsBegin=null,i=0;i<str1Length;i++)for(j=0;j<str2Length;j++)str1[i]!==str2[j]?num[i][j]=0:(num[i][j]=0===i||0===j?1:1+num[i-1][j-1],num[i][j]>maxlen&&(maxlen=num[i][j],lastSubsBegin===(thisSubsBegin=i-num[i][j]+1)?sequence+=str1[i]:(lastSubsBegin=thisSubsBegin,sequence="",sequence+=str1.substr(lastSubsBegin,i+1-lastSubsBegin))));return{length:maxlen,sequence:sequence,offset:thisSubsBegin}}function findBestLCS(mainString,targetStrings){var results=[];let bestMatchIndex=0;for(let i=0;i<targetStrings.length;i++){var currentTargetString=targetStrings[i],currentLCS=lcs(mainString,currentTargetString);results.push({target:currentTargetString,lcs:currentLCS}),currentLCS.length>results[bestMatchIndex].lcs.length&&(bestMatchIndex=i)}return{allLCS:results,bestMatch:results[bestMatchIndex],bestMatchIndex:bestMatchIndex}}export{compareTwoStrings,findBestMatch,findBestLCS};
|
80
0130/道长JS/cat/lib/utils.js
Normal file
80
0130/道长JS/cat/lib/utils.js
Normal file
@ -0,0 +1,80 @@
|
||||
|
||||
|
||||
function isSub(ext) {
|
||||
return ext == "srt" || ext == "ass" || ext == "ssa";
|
||||
}
|
||||
|
||||
function getSize(size) {
|
||||
if (size <= 0) return "";
|
||||
if (size > 1024 * 1024 * 1024 * 1024.0) {
|
||||
size /= (1024 * 1024 * 1024 * 1024.0);
|
||||
return size.toFixed(2) + "TB";
|
||||
} else if (size > 1024 * 1024 * 1024.0) {
|
||||
size /= (1024 * 1024 * 1024.0);
|
||||
return size.toFixed(2) + "GB";
|
||||
} else if (size > 1024 * 1024.0) {
|
||||
size /= (1024 * 1024.0);
|
||||
return size.toFixed(2) + "MB";
|
||||
} else {
|
||||
size /= 1024.0;
|
||||
return size.toFixed(2) + "KB";
|
||||
}
|
||||
}
|
||||
|
||||
function removeExt(text) {
|
||||
return text.indexOf('.') > -1 ? text.substring(0, text.lastIndexOf(".")) : text;
|
||||
}
|
||||
|
||||
async function log(str) {
|
||||
console.debug(str);
|
||||
}
|
||||
|
||||
function isVideoFormat(url) {
|
||||
var RULE = /http((?!http).){12,}?\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\?.*|http((?!http).){12,}\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video\/tos*/;
|
||||
if (url.indexOf("url=http") > -1 || url.indexOf(".js") > -1 || url.indexOf(".css") > -1 || url.indexOf(".html") > -1) {
|
||||
return false;
|
||||
}
|
||||
return RULE.test(url);
|
||||
}
|
||||
|
||||
function jsonParse(input, json) {
|
||||
var jsonPlayData = JSON.parse(json);
|
||||
var url = jsonPlayData.url;
|
||||
if (url.startsWith("//")) {
|
||||
url = "https:" + url;
|
||||
}
|
||||
if (!url.startsWith("http")) {
|
||||
return null;
|
||||
}
|
||||
if (url === input) {
|
||||
if (!isVideoFormat(url)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
var headers = {};
|
||||
var ua = jsonPlayData["user-agent"] || "";
|
||||
if (ua.trim().length > 0) {
|
||||
headers["User-Agent"] = " " + ua;
|
||||
}
|
||||
var referer = jsonPlayData.referer || "";
|
||||
if (referer.trim().length > 0) {
|
||||
headers["Referer"] = " " + referer;
|
||||
}
|
||||
var taskResult = {
|
||||
header: headers,
|
||||
url: url
|
||||
};
|
||||
return taskResult;
|
||||
}
|
||||
|
||||
function debug(obj) {
|
||||
for (var a in obj) {
|
||||
if (typeof(obj[a]) == "object") {
|
||||
debug(obj[a]); //递归遍历
|
||||
} else {
|
||||
console.debug(a + "=" + obj[a]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export { isSub, getSize, removeExt, log, isVideoFormat, jsonParse, debug};
|
195
0130/道长JS/cat/libvio_open.js
Normal file
195
0130/道长JS/cat/libvio_open.js
Normal file
@ -0,0 +1,195 @@
|
||||
// 自动从 地址发布页 获取&跳转url地址
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
var key = 'libvio';
|
||||
var HOST = 'https://www.libvio.pro'; // 地址发布页
|
||||
var host = '';
|
||||
var siteKey = '';
|
||||
var siteType = 0;
|
||||
|
||||
const MOBILE_UA = 'Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
var res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || MOBILE_UA,
|
||||
'Referer': host
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
// cfg = {skey: siteKey, ext: extend}
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
var html = await request(HOST);
|
||||
var $ = load(html);
|
||||
host = $('div.content-top > ul > li').find('a:first')[0].attribs.href;
|
||||
// console.debug('libvio跳转地址 =====>' + urls); // js_debug.log
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
var html = await request(host);
|
||||
var $ = load(html);
|
||||
var class_parse = $('ul.stui-header__menu > li > a[href*=type]');
|
||||
var classes = [];
|
||||
classes = _.map(class_parse, (cls) => {
|
||||
var typeId = cls.attribs['href'];
|
||||
typeId = typeId.substring(typeId.lastIndexOf('/') + 1).replace('.html','');
|
||||
return {
|
||||
type_id: typeId,
|
||||
type_name: cls.children[0].data,
|
||||
};
|
||||
});
|
||||
var filterObj = {
|
||||
1:[{key:'area',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:'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'}]},{key:'lang',name:'语言',value:[{n:'全部',v:''},{n:'国语',v:'国语'},{n:'英语',v:'英语'},{n:'粤语',v:'粤语'},{n:'闽南语',v:'闽南语'},{n:'韩语',v:'韩语'},{n:'日语',v:'日语'},{n:'法语',v:'法语'},{n:'德语',v:'德语'},{n:'其它',v:'其它'}]},{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}],
|
||||
2:[{key:'area',name:'地区',value:[{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:'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'}]},{key:'lang',name:'语言',value:[{n:'全部',v:''},{n:'国语',v:'国语'},{n:'英语',v:'英语'},{n:'粤语',v:'粤语'},{n:'闽南语',v:'闽南语'},{n:'韩语',v:'韩语'},{n:'日语',v:'日语'},{n:'其它',v:'其它'}]},{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}],
|
||||
4:[{key:'area',name:'地区',value:[{n:'全部',v:''},{n:'中国',v:'中国'},{n:'日本',v:'日本'},{n:'欧美',v:'欧美'},{n:'其他',v:'其他'}]},{key:'year',name:'年份',value:[{n:'全部',v:''},{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'}]},{key:'lang',name:'语言',value:[{n:'全部',v:''},{n:'国语',v:'国语'},{n:'英语',v:'英语'},{n:'粤语',v:'粤语'},{n:'闽南语',v:'闽南语'},{n:'韩语',v:'韩语'},{n:'日语',v:'日语'},{n:'其它',v:'其它'}]},{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}],
|
||||
27:[{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}],
|
||||
15:[{key:'area',name:'地区',value:[{n:'全部',v:''},{n:'日本',v:'日本'},{n:'韩国',v:'韩国'}]},{key:'year',name:'年份',value:[{n:'全部',v:''},{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'}]},{key:'lang',name:'语言',value:[{n:'全部',v:''},{n:'国语',v:'国语'},{n:'英语',v:'英语'},{n:'粤语',v:'粤语'},{n:'闽南语',v:'闽南语'},{n:'韩语',v:'韩语'},{n:'日语',v:'日语'},{n:'其它',v:'其它'}]},{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}],
|
||||
16:[{key:'area',name:'地区',value:[{n:'全部',v:''},{n:'美国',v:'美国'},{n:'英国',v:'英国'},{n:'德国',v:'德国'},{n:'加拿大',v:'加拿大'},{n:'其他',v:'其他'}]},{key:'year',name:'年份',value:[{n:'全部',v:''},{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'}]},{key:'lang',name:'语言',value:[{n:'全部',v:''},{n:'国语',v:'国语'},{n:'英语',v:'英语'},{n:'粤语',v:'粤语'},{n:'闽南语',v:'闽南语'},{n:'韩语',v:'韩语'},{n:'日语',v:'日语'},{n:'其它',v:'其它'}]},{key:'by',name:'排序',value:[{n:'时间',v:'time'},{n:'人气',v:'hits'},{n:'评分',v:'score'}]}]
|
||||
};
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
var link = host + '/show/1--hits---------.html';
|
||||
var html = await request(link);
|
||||
var $ = load(html);
|
||||
var items = $('ul.stui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
var a = $(item).find('a:first')[0];
|
||||
var remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/detail\/(.*).html/g, '$1'),
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: a.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
var link = host + '/show/' + tid + '-' + (extend.area || '') + '-' + (extend.by || 'time') + '--' + (extend.lang || '') + '----' + pg + '---' + (extend.year || '') + '.html';
|
||||
var html = await request(link);
|
||||
var $ = load(html);
|
||||
var items = $('ul.stui-vodlist > li');
|
||||
let videos = _.map(items, (item) => {
|
||||
var a = $(item).find('a:first')[0];
|
||||
var remarks = $($(item).find('span.pic-text')[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/detail\/(.*).html/g, '$1'),
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: a.attribs['data-original'],
|
||||
vod_remarks: remarks || '',
|
||||
};
|
||||
});
|
||||
var hasMore = $('ul.stui-page__item > li > a:contains(下一页)').length > 0;
|
||||
var pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 24,
|
||||
total: 24 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
var html = await request(host + '/detail/' + id + '.html');
|
||||
var $ = load(html);
|
||||
var vod = {
|
||||
vod_id: id,
|
||||
vod_name: $('h1:first').text().trim(),
|
||||
vod_type: $('.stui-content__detail p:first a').text(),
|
||||
vod_actor: $('.stui-content__detail p:nth-child(3)').text().replace('主演:',''),
|
||||
vod_pic: $('.stui-content__thumb img:first').attr('data-original'),
|
||||
vod_remarks : $('.stui-content__detail p:nth-child(5)').text() || '',
|
||||
vod_content: $('span.detail-content').text().trim(),
|
||||
};
|
||||
var playMap = {};
|
||||
var tabs = $('div.stui-pannel__head > h3[class*=iconfont]');
|
||||
var playlists = $('ul.stui-content__playlist');
|
||||
_.each(tabs, (tab, i) => {
|
||||
var from = tab.children[0].data;
|
||||
var list = playlists[i];
|
||||
list = $(list).find('a');
|
||||
_.each(list, (it) => {
|
||||
var title = it.children[0].data;
|
||||
var playUrl = it.attribs.href;
|
||||
if (title.length == 0) title = it.children[0].data.trim();
|
||||
if (!playMap.hasOwnProperty(from)) {
|
||||
playMap[from] = [];
|
||||
}
|
||||
playMap[from].push( title + '$' + playUrl);
|
||||
});
|
||||
});
|
||||
vod.vod_play_from = _.keys(playMap).join('$$$');
|
||||
var urls = _.values(playMap);
|
||||
var vod_play_url = _.map(urls, (urlist) => {
|
||||
return urlist.join('#');
|
||||
});
|
||||
vod.vod_play_url = vod_play_url.join('$$$');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
var html = await request(host + id);
|
||||
html = html.match(/r player_.*?=(.*?)</)[1];
|
||||
var js = JSON.parse(html);
|
||||
var url = js.url;
|
||||
var from = js.from;
|
||||
var next = js.link_next;
|
||||
var id = js.id;
|
||||
var nid = js.nid;
|
||||
var paurl = await request(host +'/static/player/' + from + '.js');
|
||||
paurl = paurl.match(/ src="(.*?)'/)[1];
|
||||
var purl = paurl + url + '&next=' + next + '&id=' + id + '&nid=' + nid;
|
||||
var playUrl = await request(purl);
|
||||
playUrl = playUrl.match(/var .* = '(.*?)'/)[1];
|
||||
// console.debug('libvio playUrl =====>' + playUrl); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
var data = JSON.parse(await request(host + '/index.php/ajax/suggest?mid=1&wd=' + wd + '&limit=50')).list;
|
||||
var videos = [];
|
||||
for (const vod of data) {
|
||||
videos.push({
|
||||
vod_id: vod.id,
|
||||
vod_name: vod.name,
|
||||
vod_pic: vod.pic,
|
||||
vod_remarks: '',
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
limit: 50,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
265
0130/道长JS/cat/mybili_open.js
Normal file
265
0130/道长JS/cat/mybili_open.js
Normal file
@ -0,0 +1,265 @@
|
||||
// 一级&搜索页 直向改横向 --> land:1, ratio:1.78,
|
||||
import { _ } from "assets://js/lib/cat.js";
|
||||
let key = '我的哔哩';
|
||||
let HOST = 'https://api.bilibili.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.361";
|
||||
// let cookie = "DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;"; // 可更换成自己的cookie
|
||||
let cookie = "https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt"; // 可更换成自己的cookie
|
||||
|
||||
async function request(reqUrl) {
|
||||
const res = await req(reqUrl, {
|
||||
headers: getMb(),
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
if (cookie.startsWith('http')) cookie = await request(cookie);
|
||||
// console.debug('我的哔哩 cookie =====>' + cookie); // js_debug.log
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
let classes = [{"type_id":"经典无损音乐合集","type_name":"经典无损音乐合集"},{"type_id":"帕梅拉","type_name":"帕梅拉"},{"type_id":"太极拳","type_name":"太极拳"},{"type_id":"健身","type_name":"健身"},{"type_id":"舞蹈","type_name":"舞蹈"},{"type_id":"音乐","type_name":"音乐"},{"type_id":"歌曲","type_name":"歌曲"},{"type_id":"MV4K","type_name":"MV"},{"type_id":"演唱会4K","type_name":"演唱会"},{"type_id":"白噪音4K","type_name":"白噪音"},{"type_id":"知名UP主","type_name":"知名UP主"},{"type_id":"说案","type_name":"说案"},{"type_id":"解说","type_name":"解说"},{"type_id":"演讲","type_name":"演讲"},{"type_id":"时事","type_name":"时事"},{"type_id":"探索发现超清","type_name":"探索发现"},{"type_id":"纪录片超清","type_name":"纪录片"},{"type_id":"平面设计教学","type_name":"平面设计教学"},{"type_id":"软件教程","type_name":"软件教程"},{"type_id":"实用教程","type_name":"实用教程"},{"type_id":"旅游","type_name":"旅游"},{"type_id":"风景4K","type_name":"风景"},{"type_id":"食谱","type_name":"食谱"},{"type_id":"美食超清","type_name":"美食"},{"type_id":"搞笑","type_name":"搞笑"},{"type_id":"球星","type_name":"球星"},{"type_id":"动物世界超清","type_name":"动物世界"},{"type_id":"相声小品","type_name":"相声小品"},{"type_id":"戏曲","type_name":"戏曲"},{"type_id":"儿童","type_name":"儿童"},{"type_id":"小姐姐4K","type_name":"小姐姐"},{"type_id":"热门","type_name":"热门"},{"type_id":"旅行探险","type_name":"旅行探险"}];
|
||||
let filterObj = {
|
||||
经典无损音乐合集:[{key:'tid',name:'分类','value':[{n:'全部',v:'经典无损音乐合集'},{n:'粤语',v:'粤语歌曲超清'},{n:'热榜',v:'2022年热们歌曲'},{n:'经典',v:'经典老歌'},{n:'古风',v:'古风歌曲'},{n:'闽南',v:'闽南语歌曲'},{n:'舞曲',v:'DJ歌曲'},{n:'翻唱',v:'网红翻唱歌曲'},{n:'音乐',v:'音乐 4k'},{n:'阿黛尔',v:'阿黛尔演唱会超清超清'},{n:'Blackpink',v:'blackpink演唱会超清'},{n:'Beyond',v:'beyond演唱会超清'},{n:'坂井泉水',v:'坂井泉水演唱会超清'},{n:'宝丽金',v:'宝丽金演唱会超清'},{n:'布兰妮',v:'布兰妮演唱会超清'},{n:'陈瑞',v:'陈瑞演唱会超清'},{n:'陈奕迅',v:'陈奕迅演唱会超清'},{n:'崔健',v:'崔健演唱会超清'},{n:'Coldplay',v:'coldplay演唱会超清'},{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:'H黑豹乐队'},{n:'降央卓玛',v:'降央卓玛演唱会超清'},{n:'江慧',v:'江慧歌曲'},{n:'吉永小百合',v:'吉永小百合歌曲'},{n:'金庸',v:'金庸影视歌曲'},{n:'刘德华',v:'刘德华演唱会超清'},{n:'Lady Gaga',v:'Lady Gaga演唱会超清'},{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:'McHotdog',v:'MC Hotdog演唱会超清'},{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:'TFBOYS',v:'TFBOYS演唱会超清'},{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:'张蔷',v:'张蔷演唱会超清'},{n:'张帝',v:'张帝演唱会超清'},{n:'张国荣',v:'张国荣演唱会超清'},{n:'郑钧',v:'郑钧演唱会超清'},{n:'张楚',v:'张楚演唱会超清'},{n:'张真',v:'张真演唱会超清'},{n:'赵传',v:'赵传演唱会超清'},{n:'周传雄',v:'周传雄演唱会超清'}]}],
|
||||
帕梅拉:[{key:'tid',name:'分类','value':[{n:'全部',v:'帕梅拉'},{n:'瘦腿',v:'帕梅拉瘦腿'},{n:'腹部',v:'帕梅拉腹部'},{n:'手臂',v:'帕梅拉手臂'},{n:'热身',v:'帕梅拉热身'},{n:'舞蹈',v:'帕梅拉舞蹈'},{n:'燃脂',v:'帕梅拉燃脂'},{n:'有氧',v:'帕梅拉有氧'},{n:'拉伸',v:'帕梅拉拉伸'}]}],
|
||||
太极拳:[{key:'tid',name:'分类','value':[{n:'全部',v:'太极拳'},{n:'邱慧芳',v:'太极拳邱慧芳'},{n:'陈氏',v:'太极拳陈氏'},{n:'武当',v:'太极拳武当'},{n:'二十四式',v:'太极拳二十四式'},{n:'三十六式',v:'太极拳三十六式'},{n:'五禽戏',v:'五禽戏'},{n:'八段锦',v:'八段锦'}]}],
|
||||
健身:[{key:'tid',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:'tid',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:'tid',name:'分类','value':[{n:'全部',v:'歌曲超清'},{n:'歌曲合集',v:'经典无损音乐合集'},{n:'歌曲热榜',v:'2022年歌曲排行榜'},{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:'DJ歌曲'},{n:'欢快歌曲',v:'欢快歌曲'},{n:'伤感歌曲',v:'伤感歌曲'},{n:'70年代歌曲',v:'70年代歌曲'},{n:'80年代歌曲',v:'80年代歌曲'},{n:'90年代歌曲',v:'90年代歌曲'},{n:'00年代歌曲',v:'00年代歌曲'},{n:'10年代歌曲',v:'10年代歌曲'},{n:'2020年歌曲',v:'2020年歌曲'},{n:'2021年歌曲',v:'2021年歌曲'},{n:'2022年歌曲',v:'2022年歌曲'},{n:'经典儿歌',v:'经典儿歌'},{n:'大合唱',v:'大合唱'},{n:'音乐汇',v:'音乐汇'},{n:'美声歌曲',v:'美声歌曲'},{n:'通俗歌曲',v:'通俗歌曲'},{n:'民族歌曲',v:'民族歌曲'}]}],
|
||||
音乐:[{key:'tid',name:'分类','value':[{n:'全部',v:'音乐4K'},{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:'DJ舞曲',v:'DJ舞曲'}]}],
|
||||
MV4K:[{key:'tid',name:'分类','value':[{n:'全部',v:'MV4K'},{n:'A阿杜',v:'阿杜MV4K'},{n:'A阿黛尔',v:'阿黛尔MV4K'},{n:'BBeyond',v:'BeyondMV4K'},{n:'BBy2',v:'By2MV4K'},{n:'BBIGBANG',v:'BIGBANGMV4K'},{n:'B布兰妮',v:'布兰妮MV4K'},{n:'C陈奕迅',v:'陈奕迅MV4K'},{n:'C蔡依林',v:'蔡依林MV4K'},{n:'C初音未来',v:'初音未来MV4K'},{n:'C蔡健雅',v:'蔡健雅MV4K'},{n:'C陈小春',v:'陈小春MV4K'},{n:'C草蜢',v:'草蜢MV4K'},{n:'C陈慧娴',v:'陈慧娴MV4K'},{n:'C崔健',v:'崔健MV4K'},{n:'C仓木麻衣',v:'仓木麻衣MV4K'},{n:'D戴荃',v:'戴荃MV4K'},{n:'D动力火车',v:'动力火车MV4K'},{n:'D邓丽君',v:'邓丽君MV4K'},{n:'D丁当',v:'丁当MV4K'},{n:'D刀郎',v:'刀郎MV4K'},{n:'D邓紫棋',v:'邓紫棋MV4K'},{n:'D戴佩妮',v:'戴佩妮MV4K'},{n:'D邓丽君',v:'邓丽君MV4K'},{n:'F飞儿乐队',v:'飞儿乐队MV4K'},{n:'F费玉清',v:'费玉清MV4K'},{n:'F费翔',v:'费翔MV4K'},{n:'F方大同',v:'方大同MV4K'},{n:'F房东的猫',v:'房东的猫MV4K'},{n:'F凤飞飞',v:'凤飞飞MV4K'},{n:'F凤凰传奇',v:'凤凰传奇MV4K'},{n:'G古风歌曲',v:'古风歌曲4K'},{n:'G国乐大典',v:'国乐大典4K'},{n:'G郭采洁',v:'郭采洁MV4K'},{n:'G光良',v:'光良MV4K'},{n:'G郭静',v:'郭静MV4K'},{n:'G郭富城',v:'郭富城MV4K'},{n:'H胡彦斌',v:'胡彦斌MV4K'},{n:'H胡夏',v:'胡夏MV4K'},{n:'H韩红',v:'韩红MV4K'},{n:'H黄品源',v:'黄品源MV4K'},{n:'H黄小琥',v:'黄小琥MV4K'},{n:'H花儿乐队',v:'花儿乐队MV4K'},{n:'H黄家强',v:'黄家强MV4K'},{n:'H后街男孩',v:'后街男孩MV4K'},{n:'J经典老歌',v:'经典老歌4K'},{n:'J贾斯丁比伯',v:'贾斯丁比伯MV4K'},{n:'J金池',v:'金池MV4K'},{n:'J金志文',v:'金志文MV4K'},{n:'J焦迈奇',v:'焦迈奇MV4K'},{n:'K筷子兄弟',v:'筷子兄弟MV4K'},{n:'L李玟',v:'李玟MV4K'},{n:'L林忆莲',v:'林忆莲MV4K'},{n:'L李克勤',v:'李克勤MV4K'},{n:'L刘宪华',v:'刘宪华MV4K'},{n:'L李圣杰',v:'李圣杰MV4K'},{n:'L林宥嘉',v:'林宥嘉MV4K'},{n:'L梁静茹',v:'梁静茹MV4K'},{n:'L李健',v:'李健MV4K'},{n:'L林俊杰',v:'林俊杰MV4K'},{n:'L李玉刚',v:'李玉刚MV4K'},{n:'L林志炫',v:'林志炫MV4K'},{n:'L李荣浩',v:'李荣浩MV4K'},{n:'L李宇春',v:'李宇春MV4K'},{n:'L洛天依',v:'洛天依MV4K'},{n:'L林子祥',v:'林子祥MV4K'},{n:'L李宗盛',v:'李宗盛MV4K'},{n:'L黎明',v:'黎明MV4K'},{n:'L刘德华',v:'刘德华MV4K'},{n:'L罗大佑',v:'罗大佑MV4K'},{n:'L林肯公园',v:'林肯公园MV4K'},{n:'LLadyGaga',v:'LadyGagaMV4K'},{n:'L旅行团乐队',v:'旅行团乐队MV4K'},{n:'M莫文蔚',v:'莫文蔚MV4K'},{n:'M毛不易',v:'毛不易MV4K'},{n:'M梅艳芳',v:'梅艳芳MV4K'},{n:'M迈克尔杰克逊',v:'迈克尔杰克逊MV4K'},{n:'N南拳妈妈',v:'南拳妈妈MV4K'},{n:'P朴树',v:'朴树MV4K'},{n:'Q齐秦',v:'齐秦MV4K'},{n:'Q青鸟飞鱼',v:'青鸟飞鱼MV4K'},{n:'R容祖儿',v:'容祖儿MV4K'},{n:'R热歌',v:'热歌MV4K'},{n:'R任贤齐',v:'任贤齐MV4K'},{n:'S水木年华',v:'水木年华MV4K'},{n:'S孙燕姿',v:'孙燕姿MV4K'},{n:'S苏打绿',v:'苏打绿MV4K'},{n:'SSHE',v:'SHEMV4K'},{n:'S孙楠',v:'孙楠MV4K'},{n:'T陶喆',v:'陶喆MV4K'},{n:'T谭咏麟',v:'谭咏麟MV4K'},{n:'T田馥甄',v:'田馥甄MV4K'},{n:'T谭维维',v:'谭维维MV4K'},{n:'T逃跑计划',v:'逃跑计划MV4K'},{n:'T田震',v:'田震MV4K'},{n:'T谭晶',v:'谭晶MV4K'},{n:'T屠洪刚',v:'屠洪刚MV4K'},{n:'T泰勒·斯威夫特',v:'泰勒·斯威夫特MV4K'},{n:'W王力宏',v:'王力宏MV4K'},{n:'W王杰',v:'王杰MV4K'},{n:'W吴克群',v:'吴克群MV4K'},{n:'W王心凌',v:'王心凌MV4K'},{n:'W汪峰',v:'汪峰MV4K'},{n:'W伍佰',v:'伍佰MV4K'},{n:'W王菲',v:'王菲MV4K'},{n:'W五月天',v:'五月天MV4K'},{n:'W汪苏泷',v:'汪苏泷MV4K'},{n:'X徐佳莹',v:'徐佳莹MV4K'},{n:'X弦子',v:'弦子MV4K'},{n:'X萧亚轩',v:'萧亚轩MV4K'},{n:'X许巍',v:'许巍MV4K'},{n:'X薛之谦',v:'薛之谦MV4K'},{n:'X许嵩',v:'许嵩MV4K'},{n:'X小虎队',v:'小虎队MV4K'},{n:'X萧敬腾',v:'萧敬腾MV4K'},{n:'X谢霆锋',v:'谢霆锋MV4K'},{n:'X徐小凤',v:'徐小凤MV4K'},{n:'X信乐队',v:'信乐队MV4K'},{n:'Y夜愿乐队',v:'夜愿乐队MV4K'},{n:'Y原创音乐',v:'原创音乐MV4K'},{n:'Y羽泉',v:'羽泉MV4K'},{n:'Y粤语',v:'粤语MV4K'},{n:'Y郁可唯',v:'郁可唯MV4K'},{n:'Y叶倩文',v:'叶倩文MV4K'},{n:'Y杨坤',v:'杨坤MV4K'},{n:'Y庾澄庆',v:'庾澄庆MV4K'},{n:'Y尤长靖',v:'尤长靖MV4K'},{n:'Y易烊千玺',v:'易烊千玺MV4K'},{n:'Y袁娅维',v:'袁娅维MV4K'},{n:'Y杨丞琳',v:'杨丞琳MV4K'},{n:'Y杨千嬅',v:'杨千嬅MV4K'},{n:'Y杨宗纬',v:'杨宗纬MV4K'},{n:'Z周杰伦',v:'周杰伦MV4K'},{n:'Z张学友',v:'张学友MV4K'},{n:'Z张信哲',v:'张信哲MV4K'},{n:'Z张宇',v:'张宇MV4K'},{n:'Z周华健',v:'周华健MV4K'},{n:'Z张韶涵',v:'张韶涵MV4K'},{n:'Z周深',v:'周深MV4K'},{n:'Z纵贯线',v:'纵贯线MV4K'},{n:'Z赵雷',v:'赵雷MV4K'},{n:'Z周传雄',v:'周传雄MV4K'},{n:'Z张国荣',v:'张国荣MV4K'},{n:'Z周慧敏',v:'周慧敏MV4K'},{n:'Z张惠妹',v:'张惠妹MV4K'},{n:'Z周笔畅',v:'周笔畅MV4K'},{n:'Z郑中基',v:'郑中基MV4K'},{n:'Z张艺兴',v:'张艺兴MV4K'},{n:'Z张震岳',v:'张震岳MV4K'},{n:'Z中国好声音',v:'中国好声音MV4K'},{n:'Z张雨生',v:'张雨生MV4K'},{n:'Z郑智化',v:'郑智化MV4K'},{n:'Z卓依婷',v:'卓依婷MV4K'},{n:'Z中岛美雪',v:'中岛美雪MV4K'}]}],
|
||||
演唱会4K:[{key:'tid',name:'分类','value':[{n:'全部',v:'演唱会4K'},{n:'A阿杜',v:'阿杜演唱会4K'},{n:'A阿黛尔',v:'阿黛尔演唱会4K'},{n:'BBeyond',v:'Beyond演唱会4K'},{n:'BBy2',v:'By2演唱会4K'},{n:'BBIGBANG',v:'BIGBANG演唱会4K'},{n:'B布兰妮',v:'布兰妮演唱会4K'},{n:'B坂井泉水',v:'坂井泉水演唱会4K'},{n:'C陈奕迅',v:'陈奕迅演唱会4K'},{n:'C蔡依林',v:'蔡依林演唱会4K'},{n:'C初音未来',v:'初音未来演唱会4K'},{n:'C蔡健雅',v:'蔡健雅演唱会4K'},{n:'C陈小春',v:'陈小春演唱会4K'},{n:'C草蜢',v:'草蜢演唱会4K'},{n:'C陈慧娴',v:'陈慧娴演唱会4K'},{n:'C崔健',v:'崔健演唱会4K'},{n:'C仓木麻衣',v:'仓木麻衣演唱会4K'},{n:'D戴荃',v:'戴荃演唱会4K'},{n:'D动力火车',v:'动力火车演唱会4K'},{n:'D邓丽君',v:'邓丽君演唱会4K'},{n:'D丁当',v:'丁当演唱会4K'},{n:'D刀郎',v:'刀郎演唱会4K'},{n:'D邓紫棋',v:'邓紫棋演唱会4K'},{n:'D戴佩妮',v:'戴佩妮演唱会4K'},{n:'D邓丽君',v:'邓丽君演唱会4K'},{n:'F飞儿乐队',v:'飞儿乐队演唱会4K'},{n:'F费玉清',v:'费玉清演唱会4K'},{n:'F费翔',v:'费翔演唱会4K'},{n:'F方大同',v:'方大同演唱会4K'},{n:'F房东的猫',v:'房东的猫演唱会4K'},{n:'F凤飞飞',v:'凤飞飞演唱会4K'},{n:'F凤凰传奇',v:'凤凰传奇演唱会4K'},{n:'G郭采洁',v:'郭采洁演唱会4K'},{n:'G光良',v:'光良演唱会4K'},{n:'G郭静',v:'郭静演唱会4K'},{n:'G郭富城',v:'郭富城演唱会4K'},{n:'H胡彦斌',v:'胡彦斌演唱会4K'},{n:'H胡夏',v:'胡夏演唱会4K'},{n:'H韩红',v:'韩红演唱会4K'},{n:'H黄品源',v:'黄品源演唱会4K'},{n:'H黄小琥',v:'黄小琥演唱会4K'},{n:'H花儿乐队',v:'花儿乐队演唱会4K'},{n:'H黄家强',v:'黄家强演唱会4K'},{n:'H后街男孩',v:'后街男孩演唱会4K'},{n:'J经典老歌',v:'经典老歌演唱会4K'},{n:'J贾斯丁比伯',v:'贾斯丁比伯演唱会4K'},{n:'J金池',v:'金池演唱会4K'},{n:'J金志文',v:'金志文演唱会4K'},{n:'J焦迈奇',v:'焦迈奇演唱会4K'},{n:'K筷子兄弟',v:'筷子兄弟演唱会4K'},{n:'L李玟',v:'李玟演唱会4K'},{n:'L林忆莲',v:'林忆莲演唱会4K'},{n:'L李克勤',v:'李克勤演唱会4K'},{n:'L刘宪华',v:'刘宪华演唱会4K'},{n:'L李圣杰',v:'李圣杰演唱会4K'},{n:'L林宥嘉',v:'林宥嘉演唱会4K'},{n:'L梁静茹',v:'梁静茹演唱会4K'},{n:'L李健',v:'李健演唱会4K'},{n:'L林俊杰',v:'林俊杰演唱会4K'},{n:'L李玉刚',v:'李玉刚演唱会4K'},{n:'L林志炫',v:'林志炫演唱会4K'},{n:'L李荣浩',v:'李荣浩演唱会4K'},{n:'L李宇春',v:'李宇春演唱会4K'},{n:'L洛天依',v:'洛天依演唱会4K'},{n:'L林子祥',v:'林子祥演唱会4K'},{n:'L李宗盛',v:'李宗盛演唱会4K'},{n:'L黎明',v:'黎明演唱会4K'},{n:'L刘德华',v:'刘德华演唱会4K'},{n:'L罗大佑',v:'罗大佑演唱会4K'},{n:'L林肯公园',v:'林肯公园演唱会4K'},{n:'LLadyGaga',v:'LadyGaga演唱会4K'},{n:'L旅行团乐队',v:'旅行团乐队演唱会4K'},{n:'M莫文蔚',v:'莫文蔚演唱会4K'},{n:'M毛不易',v:'毛不易演唱会4K'},{n:'M梅艳芳',v:'梅艳芳演唱会4K'},{n:'M迈克尔杰克逊',v:'迈克尔杰克逊演唱会4K'},{n:'N南拳妈妈',v:'南拳妈妈演唱会4K'},{n:'P朴树',v:'朴树演唱会4K'},{n:'Q齐秦',v:'齐秦演唱会4K'},{n:'Q青鸟飞鱼',v:'青鸟飞鱼演唱会4K'},{n:'R容祖儿',v:'容祖儿演唱会4K'},{n:'R任贤齐',v:'任贤齐演唱会4K'},{n:'S水木年华',v:'水木年华演唱会4K'},{n:'S孙燕姿',v:'孙燕姿演唱会4K'},{n:'S苏打绿',v:'苏打绿演唱会4K'},{n:'SSHE',v:'SHE演唱会4K'},{n:'S孙楠',v:'孙楠演唱会4K'},{n:'T陶喆',v:'陶喆演唱会4K'},{n:'T谭咏麟',v:'谭咏麟演唱会4K'},{n:'T田馥甄',v:'田馥甄演唱会4K'},{n:'T谭维维',v:'谭维维演唱会4K'},{n:'T逃跑计划',v:'逃跑计划演唱会4K'},{n:'T田震',v:'田震演唱会4K'},{n:'T谭晶',v:'谭晶演唱会4K'},{n:'T屠洪刚',v:'屠洪刚演唱会4K'},{n:'T泰勒·斯威夫特',v:'泰勒·斯威夫特演唱会4K'},{n:'W王力宏',v:'王力宏演唱会4K'},{n:'W王杰',v:'王杰演唱会4K'},{n:'W吴克群',v:'吴克群演唱会4K'},{n:'W王心凌',v:'王心凌演唱会4K'},{n:'W汪峰',v:'汪峰演唱会4K'},{n:'W伍佰',v:'伍佰演唱会4K'},{n:'W王菲',v:'王菲演唱会4K'},{n:'W五月天',v:'五月天演唱会4K'},{n:'W汪苏泷',v:'汪苏泷演唱会4K'},{n:'X徐佳莹',v:'徐佳莹演唱会4K'},{n:'X弦子',v:'弦子演唱会4K'},{n:'X萧亚轩',v:'萧亚轩演唱会4K'},{n:'X许巍',v:'许巍演唱会4K'},{n:'X薛之谦',v:'薛之谦演唱会4K'},{n:'X许嵩',v:'许嵩演唱会4K'},{n:'X小虎队',v:'小虎队演唱会4K'},{n:'X萧敬腾',v:'萧敬腾演唱会4K'},{n:'X谢霆锋',v:'谢霆锋演唱会4K'},{n:'X徐小凤',v:'徐小凤演唱会4K'},{n:'X信乐队',v:'信乐队演唱会4K'},{n:'Y夜愿乐队',v:'夜愿乐队演唱会4K'},{n:'Y羽泉',v:'羽泉演唱会4K'},{n:'Y郁可唯',v:'郁可唯演唱会4K'},{n:'Y叶倩文',v:'叶倩文演唱会4K'},{n:'Y杨坤',v:'杨坤演唱会4K'},{n:'Y庾澄庆',v:'庾澄庆演唱会4K'},{n:'Y尤长靖',v:'尤长靖演唱会4K'},{n:'Y易烊千玺',v:'易烊千玺演唱会4K'},{n:'Y袁娅维',v:'袁娅维演唱会4K'},{n:'Y杨丞琳',v:'杨丞琳演唱会4K'},{n:'Y杨千嬅',v:'杨千嬅演唱会4K'},{n:'Y杨宗纬',v:'杨宗纬演唱会4K'},{n:'Z周杰伦',v:'周杰伦演唱会4K'},{n:'Z张学友',v:'张学友演唱会4K'},{n:'Z张信哲',v:'张信哲演唱会4K'},{n:'Z张宇',v:'张宇演唱会4K'},{n:'Z周华健',v:'周华健演唱会4K'},{n:'Z张韶涵',v:'张韶涵演唱会4K'},{n:'Z周深',v:'周深演唱会4K'},{n:'Z纵贯线',v:'纵贯线演唱会4K'},{n:'Z赵雷',v:'赵雷演唱会4K'},{n:'Z周传雄',v:'周传雄演唱会4K'},{n:'Z张国荣',v:'张国荣演唱会4K'},{n:'Z周慧敏',v:'周慧敏演唱会4K'},{n:'Z张惠妹',v:'张惠妹演唱会4K'},{n:'Z周笔畅',v:'周笔畅演唱会4K'},{n:'Z郑中基',v:'郑中基演唱会4K'},{n:'Z张艺兴',v:'张艺兴演唱会4K'},{n:'Z张震岳',v:'张震岳演唱会4K'},{n:'Z张雨生',v:'张雨生演唱会4K'},{n:'Z郑智化',v:'郑智化演唱会4K'},{n:'Z卓依婷',v:'卓依婷演唱会4K'},{n:'Z中岛美雪',v:'中岛美雪演唱会4K'}]}],
|
||||
白噪音4K:[{key:'tid',name:'分类','value':[{n:'全部',v:'白噪音4K'},{n:'窗白噪音',v:'窗白噪音4K'},{n:'环境白噪音',v:'环境白噪音4K'},{n:'自然白噪音',v:'自然白噪音4K'},{n:'助眠白噪音',v:'助眠白噪音4K'}]}],
|
||||
知名UP主:[{key:'tid',name:'分类','value':[{n:'全部',v:'知名UP主'},{n:'菠萝赛东',v:'菠萝赛东'},{n:'冯提莫',v:'冯提莫'},{n:'徐云流浪中国',v:'徐云流浪中国'},{n:'YanGeographer',v:'YanGeographer'},{n:'棋手战鹰',v:'棋手战鹰'},{n:'林延秋',v:'林延秋'},{n:'吴sir说电影',v:'吴sir说电影'},{n:'李子柒',v:'李子柒'},{n:'美食作家王刚R',v:'美食作家王刚R'},{n:'智能路障',v:'智能路障'},{n:'于赓哲老师',v:'于赓哲老师'},{n:'一战成名_功夫',v:'一战成名_功夫'},{n:'历史调研室',v:'历史调研室'},{n:'利利川',v:'利利川'},{n:'我叫孙火旺',v:'我叫孙火旺'},{n:'渤海小吏',v:'渤海小吏'},{n:'无穷小亮的科普日常',v:'无穷小亮的科普日常'},{n:'申六宫',v:'申六宫'},{n:'-LKs-',v:'-LKs-'},{n:'小约翰可汗',v:'小约翰可汗'},{n:'low馆长',v:'low馆长'},{n:'自说自话的总裁',v:'自说自话的总裁'},{n:'所长林超',v:'所长林超'},{n:'世界未解之谜M',v:'世界未解之谜M'},{n:'李永乐老师官方',v:'李永乐老师官方'},{n:'罗兹',v:'罗兹'},{n:'回到2049',v:'回到2049'},{n:'二次元的中科院物理所',v:'二次元的中科院物理所'},{n:'毕导THU',v:'毕导THU'},{n:'罗翔讲刑法',v:'罗翔讲刑法'},{n:'戴博士实验室',v:'戴博士实验室'},{n:'芳斯塔芙',v:'芳斯塔芙'},{n:'参赛者网',v:'参赛者网'},{n:'三维地图看世界',v:'三维地图看世界'},{n:'有机社会',v:'有机社会'},{n:'乌鸦校尉CaptainWuya',v:'乌鸦校尉CaptainWuya'},{n:'果壳',v:'果壳'},{n:'严伯钧',v:'严伯钧'},{n:'是你们的康康',v:'是你们的康康'},{n:'老爸评测',v:'老爸评测'},{n:'硬核的半佛仙人',v:'硬核的半佛仙人'},{n:'盗月社食遇记',v:'盗月社食遇记'},{n:'我是郭杰瑞',v:'我是郭杰瑞'},{n:'papi酱',v:'papi酱'},{n:'老番茄',v:'老番茄'},{n:'绵羊料理',v:'绵羊料理'},{n:'老师好我叫何同学',v:'老师好我叫何同学'},{n:'敬汉卿',v:'敬汉卿'},{n:'周六野Zoey',v:'周六野Zoey'},{n:'木鱼水心',v:'木鱼水心'},{n:'凉风Kaze',v:'凉风Kaze'},{n:'小潮院长',v:'小潮院长'},{n:'中国BOY超级大猩猩',v:'中国BOY超级大猩猩'},{n:'敖厂长',v:'敖厂长'},{n:'A阿阳热爱前端',v:'阿阳热爱前端'},{n:'A艾栗夏',v:'艾栗夏'},{n:'A爱读书的King',v:'爱读书的King'},{n:'A爱看报的Kris',v:'爱看报的Kris'},{n:'A安森垚',v:'安森垚'},{n:'A安慰记心理小店',v:'安慰记心理小店'},{n:'A安因思谈',v:'安因思谈'},{n:'A昂克英文君',v:'昂克英文君'},{n:'B阪神电车',v:'阪神电车'},{n:'B宝剑侍从',v:'宝剑侍从'},{n:'B北京青年x凉子访谈录',v:'北京青年x凉子访谈录'},{n:'B北师大刘文利',v:'北师大刘文利'},{n:'B备胎说车',v:'备胎说车'},{n:'B毕导THU',v:'毕导THU'},{n:'B哔哩哔哩纪录片',v:'哔哩哔哩纪录片'},{n:'B蝙蝠音乐',v:'蝙蝠音乐'},{n:'B冰零-Mahiru忠诚眷属',v:'冰零-Mahiru忠诚眷属'},{n:'B冰糖雪梨Cherie',v:'冰糖雪梨Cherie'},{n:'B波普尔2020',v:'波普尔2020'},{n:'B不务正业的李雷',v:'不务正业的李雷'},{n:'B不正经老丝',v:'不正经老丝'},{n:'C草说木言',v:'草说木言'},{n:'C柴知道',v:'柴知道'},{n:'C程十安',v:'C程十安'},{n:'D大啊毛君',v:'大啊毛君'},{n:'D大连老师王博文',v:'大连老师王博文'},{n:'D大门ZRR',v:'大门ZRR'},{n:'D大象放映室',v:'大象放映室'},{n:'D大又元',v:'大又元'},{n:'D戴建业老师',v:'戴建业老师'},{n:'D调侃企业发展史',v:'调侃企业发展史'},{n:'D动画讲编程',v:'动画讲编程'},{n:'D动物学博士陈睿',v:'动物学博士陈睿'},{n:'D杜滑滑',v:'杜滑滑'},{n:'E鹅姐职场',v:'鹅姐职场'},{n:'F帆雨动画',v:'帆雨动画'},{n:'F反诈骗',v:'反诈骗'},{n:'F方猫boom',v:'方猫boom'},{n:'F芳斯塔芙',v:'芳斯塔芙'},{n:'F菲比老司机',v:'菲比老司机'},{n:'F附议YJango',v:'附议YJango'},{n:'G肝帝董佳宁',v:'肝帝董佳宁'},{n:'G高盛元',v:'高盛元'},{n:'G龚老师课堂',v:'龚老师课堂'},{n:'G郭爷物理',v:'郭爷物理'},{n:'G国家玮-开明致学',v:'国家玮-开明致学'},{n:'G果壳',v:'果壳'},{n:'G果木浪子',v:'果木浪子'},{n:'H哈佛雪梨',v:'哈佛雪梨'},{n:'H韩顺平',v:'韩顺平'},{n:'H韩语养乐多老师',v:'韩语养乐多老师'},{n:'H画画的番木',v:'画画的番木'},{n:'H画渣花小烙',v:'画渣花小烙'},{n:'H幻海航行',v:'幻海航行'},{n:'H灰细胞',v:'灰细胞'},{n:'H回到2049',v:'回到2049'},{n:'H会放羊的教书匠',v:'会放羊的教书匠'},{n:'J机械百宝箱',v:'机械百宝箱'},{n:'J纪录片我去看世界',v:'纪录片我去看世界'},{n:'J纪录片之家字幕组',v:'纪录片之家字幕组'},{n:'J技术研究院',v:'技术研究院'},{n:'J季绝学',v:'季绝学'},{n:'J夹性芝士',v:'夹性芝士'},{n:'J讲历史的赵冬梅',v:'讲历史的赵冬梅'},{n:'J经济研究室-祈祷',v:'经济研究室-祈祷'},{n:'J军武志',v:'军武志'},{n:'K看懂村',v:'看懂村'},{n:'K科普中国',v:'科普中国'},{n:'K科学声音',v:'科学声音'},{n:'L拉片实验室',v:'拉片实验室'},{n:'L唠点历史',v:'唠点历史'},{n:'L老K的无聊杂谈',v:'老K的无聊杂谈'},{n:'L老爸评测',v:'老爸评测'},{n:'L老龙山下的狐狸',v:'老龙山下的狐狸'},{n:'L老师好我叫何同学',v:'老师好我叫何同学'},{n:'L乐乐老师的网络课堂',v:'乐乐老师的网络课堂'},{n:'L乐有为医生',v:'乐有为医生'},{n:'L冷静医夏',v:'冷静医夏'},{n:'L李船长笔记',v:'李船长笔记'},{n:'L李永乐老师官方',v:'李永乐老师官方'},{n:'L历史调研室',v:'历史调研室'},{n:'L历史启示录',v:'历史启示录'},{n:'L罗翔说刑法',v:'罗翔说刑法'},{n:'M木鱼水心',v:'木鱼水心'},{n:'S森纳映画',v:'森纳映画'},{n:'S沙盘上的战争',v:'沙盘上的战争'},{n:'S设计师的睡前毒物',v:'设计师的睡前毒物'},{n:'S生命中国',v:'生命中国'},{n:'S史图馆',v:'史图馆'},{n:'S世界记忆大师龙雅',v:'世界记忆大师龙雅'},{n:'S司马南',v:'司马南'},{n:'S思想史万有引力',v:'思想史万有引力'},{n:'S所长林超',v:'所长林超'},{n:'T汤质看本质',v:'汤质看本质'},{n:'T天真的和感伤的小说家',v:'天真的和感伤的小说家'},{n:'T听君一席课',v:'听君一席课'},{n:'W唯一讲述者',v:'唯一讲述者'},{n:'X心理学陈祉妍',v:'心理学陈祉妍'},{n:'X心理学于悦',v:'心理学于悦'},{n:'X心医林霖',v:'心医林霖'},{n:'X刑法学',v:'刑法学'},{n:'Y有观点大历史',v:'有观点大历史'},{n:'Z这知识好冷',v:'这知识好冷'},{n:'Z中科院格致论道讲坛',v:'中科院格致论道讲坛'},{n:'Z中医基础理论',v:'中医基础理论'},{n:'Z周观鱼UP',v:'周观鱼UP'},{n:'Z周末音乐',v:'周末音乐'},{n:'Z诸葛呈像',v:'诸葛呈像'},{n:'Z子小孙的老年生活',v:'子小孙的老年生活'},{n:'Z专心种花兔',v:'专心种花兔'},{n:'Z子都忆情',v:'子都忆情'}]}],
|
||||
说案:[{key:'tid',name:'分类','value':[{n:'全部',v:'说案'},{n:'汤圆',v:'汤圆说案'},{n:'唐唐',v:'唐唐说案'},{n:'罗翔',v:'罗翔说刑法'},{n:'何家弘',v:'何家弘说案'},{n:'韩诺',v:'韩诺说案'},{n:'老V',v:'老V说案'},{n:'禁播档案',v:'禁播档案'}]}],
|
||||
解说:[{key:'tid',name:'分类','value':[{n:'全部',v:'解说'},{n:'电影',v:'电影解说'},{n:'电视',v:'电视解说'},{n:'小说',v:'小说解说'},{n:'历史',v:'历史解说'},{n:'动漫',v:'动漫解说'},{n:'电影',v:'歌词解说'},{n:'科普',v:'科普'}]}],
|
||||
演讲:[{key:'tid',name:'分类','value':[{n:'全部',v:'全部演讲4K'},{n:'A艾跃进',v:'艾跃进演讲4K'},{n:'C超级演说家',v:'超级演说家4K'},{n:'D电影',v:'电影演讲4K'},{n:'D典籍里的中国',v:'典籍里的中国4K'},{n:'G感动中国',v:'感动中国4K'},{n:'G郭继承',v:'郭继承演讲4K'},{n:'H华春莹',v:'华春莹演讲4K'},{n:'L雷军',v:'雷军演讲4K'},{n:'L罗翔',v:'罗翔演讲4K'},{n:'R任正非',v:'任正非演讲4K'},{n:'TED',v:'TED演讲4K'},{n:'W汪文斌',v:'汪文斌演讲4K'},{n:'Y一刻',v:'一刻演讲4K'},{n:'Z赵立坚',v:'赵立坚演讲4K'},{n:'Z郑强',v:'郑强演讲4K'}]}],
|
||||
时事:[{key:'tid',name:'分类','value':[{n:'全部',v:'时事'},{n:'时事热点',v:'时事热点'},{n:'时事评论',v:'时事评论'},{n:'时事新闻',v:'时事新闻'},{n:'时事开讲',v:'时事开讲'},{n:'时事报告',v:'时事报告'},{n:'时事纵横',v:'时事纵横'},{n:'时事政治',v:'时事政治'},{n:'时事亮亮点',v:'时事亮亮点'},{n:'时事直通车',v:'时事直通车'}]}],
|
||||
平面设计教学:[{key:'tid',name:'分类','value':[{n:'全部',v:'平面设计教学'},{n:'AI绘画',v:'AI绘画'},{n:'AdobePhotoshop',v:'AdobePhotoshop教程'},{n:'AdobeIllustrator',v:'AdobeIllustrator教程'},{n:'CorelDRAW',v:'CorelDRAW教程'},{n:'AdobeInDesign',v:'AdobeInDesign教程'},{n:'AdobePagermaker',v:'AdobePagermaker教程'},{n:'SAI',v:'SAI教程'},{n:'AdobeBridge',v:'AdobeBridge教程'},{n:'AdobePagermaker',v:'AdobePagermake教程r'},{n:'3DStudioMax',v:'3DStudioMax教程'},{n:'PR',v:'PR教程'},{n:'AE',v:'AE教程'},{n:'CINEMA4D',v:'CINEMA4D教程'}]}],
|
||||
软件教程:[{key:'tid',name:'分类','value':[{n:'全部',v:'软件教程'},{n:'Windows',v:'Windows'},{n:'MT管理器',v:'MT管理器'},{n:'NP管理器',v:'NP管理器'},{n:'mixplorer',v:'mixplorer'},{n:'脱壳',v:'脱壳'},{n:'爬虫',v:'爬虫'},{n:'json&jar',v:'json&jar'},{n:'网盘挂载',v:'网盘挂载'},{n:'alist+WebDav',v:'alist+WebDav'},{n:'TVBox',v:'TVBox'},{n:'EXCEL',v:'EXCEL教程'},{n:'Git入门到精通',v:'Git入门到精通'},{n:'java',v:'java教程'},{n:'phyton',v:'phyton教程'},{n:'xml',v:'xml教程'}]}],
|
||||
实用教程:[{key:'tid',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:'魔方教程'}]}],
|
||||
旅游:[{key:'tid',name:'分类','value':[{n:'全部',v:'旅游'},{n:'A澳门',v:'澳门旅游'},{n:'A安徽',v:'安徽旅游'},{n:'B布达拉宫',v:'布达拉宫旅游'},{n:'B北京',v:'北京旅游'},{n:'C重庆',v:'重庆旅游'},{n:'C草原',v:'草原旅游'},{n:'D大海',v:'大海旅游'},{n:'F福建',v:'福建旅游'},{n:'G广东',v:'广东旅游'},{n:'G广西',v:'广西旅游'},{n:'G贵州',v:'贵州旅游'},{n:'G甘肃',v:'甘肃旅游'},{n:'H海南',v:'海南旅游'},{n:'H河北',v:'河北旅游'},{n:'H河南',v:'河南旅游'},{n:'H湖北',v:'湖北旅游'},{n:'H湖南',v:'湖南旅游'},{n:'H黑龙江',v:'黑龙江旅游'},{n:'J吉林',v:'吉林旅游'},{n:'J江苏',v:'江苏旅游'},{n:'J江西',v:'江西旅游'},{n:'L辽宁',v:'辽宁旅游'},{n:'M民宿',v:'民宿旅游'},{n:'N内蒙古',v:'内蒙古旅游'},{n:'N宁夏',v:'宁夏旅游'},{n:'Q青海',v:'青海旅游'},{n:'S上海',v:'上海旅游'},{n:'S陕西',v:'陕西旅游'},{n:'S四川',v:'四川旅游'},{n:'S山西',v:'山西旅游'},{n:'S山东',v:'山东旅游'},{n:'T天津',v:'天津旅游'},{n:'T台湾',v:'台湾旅游'},{n:'T天空',v:'天空旅游'},{n:'X西湖',v:'西湖旅游'},{n:'X西藏',v:'西藏旅游'},{n:'X新疆',v:'新疆旅游'},{n:'X香港',v:'香港旅游'},{n:'Y云南',v:'云南旅游'},{n:'Z浙江',v:'浙江旅游'}]}],
|
||||
风景4K:[{key:'tid',name:'分类','value':[{n:'全部',v:'风景4K'},{n:'A澳门',v:'澳门风景4K'},{n:'A安徽',v:'安徽风景4K'},{n:'B布达拉宫',v:'布达拉宫风景4K'},{n:'B北京',v:'北京风景4K'},{n:'C重庆',v:'重庆风景4K'},{n:'C草原',v:'草原风景4K'},{n:'D大海',v:'大海风景4K'},{n:'F福建',v:'福建风景4K'},{n:'G广东',v:'广东风景4K'},{n:'G广西',v:'广西风景4K'},{n:'G贵州',v:'贵州风景4K'},{n:'G甘肃',v:'甘肃风景4K'},{n:'H海南',v:'海南风景4K'},{n:'H河北',v:'河北风景4K'},{n:'H河南',v:'河南风景4K'},{n:'H湖北',v:'湖北风景4K'},{n:'H湖南',v:'湖南风景4K'},{n:'H黑龙江',v:'黑龙江风景4K'},{n:'J吉林',v:'吉林风景4K'},{n:'J江苏',v:'江苏风景4K'},{n:'J江西',v:'江西风景4K'},{n:'L辽宁',v:'辽宁风景4K'},{n:'L洛阳',v:'洛阳风景4K'},{n:'M民宿',v:'民宿风景4K'},{n:'N南京',v:'南京风景4K'},{n:'N内蒙古',v:'内蒙古风景4K'},{n:'N宁夏',v:'宁夏风景4K'},{n:'Q青海',v:'青海风景4K'},{n:'S上海',v:'上海风景4K'},{n:'S陕西',v:'陕西风景4K'},{n:'S四川',v:'四川风景4K'},{n:'S山西',v:'山西风景4K'},{n:'S山东',v:'山东风景4K'},{n:'S苏州',v:'苏州风景4K'},{n:'T天津',v:'天津风景4K'},{n:'T台湾',v:'台湾风景4K'},{n:'T天空',v:'天空风景4K'},{n:'X西安',v:'西安风景4K'},{n:'X西湖',v:'西湖风景4K'},{n:'X西藏',v:'西藏风景4K'},{n:'X新疆',v:'新疆风景4K'},{n:'X香港',v:'香港风景4K'},{n:'Y云南',v:'云南风景4K'},{n:'Z浙江',v:'浙江风景4K'}]}],
|
||||
食谱:[{key:'tid',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:'小吃制作'}]}],
|
||||
美食超清:[{key:'tid',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:'点心',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:'tid',name:'分类','value':[{n:'全部',v:'搞笑'},{n:'搞笑配音',v:'搞笑配音'},{n:'搞笑电影',v:'搞笑电影'},{n:'搞笑综艺',v:'搞笑综艺'},{n:'鬼畜电影',v:'鬼畜电影'},{n:'搞笑动画',v:'搞笑动画'},{n:'搞笑番',v:'搞笑番'},{n:'十万个冷笑话',v:'十万个冷笑话'}]}],
|
||||
球星:[{key:'tid',name:'分类','value':[{n:'全部',v:'球星'},{n:'B巴萨',v:'巴萨4K'},{n:'B巴黎圣日耳曼',v:'巴黎圣日耳曼4K'},{n:'B贝克汉姆',v:'贝克汉姆4K'},{n:'C罗',v:'C罗4K'},{n:'D杜兰特',v:'杜兰特4K'},{n:'D德布劳内',v:'德布劳内4K'},{n:'D德甲',v:'德甲4K'},{n:'F1',v:'F14K'},{n:'G国米',v:'国米4K'},{n:'G高尔夫',v:'高尔夫4K'},{n:'H亨利',v:'亨利4K'},{n:'H皇马',v:'皇马4K'},{n:'K库里',v:'库里4K'},{n:'L罗纳尔多',v:'罗纳尔多4K'},{n:'M梅西',v:'梅西4K'},{n:'M曼联',v:'曼联4K'},{n:'M曼城',v:'曼城4K'},{n:'NBA',v:'NBA4K'},{n:'N内马尔',v:'内马尔4K'},{n:'O欧冠',v:'欧冠4K'},{n:'Q齐达内',v:'齐达内4K'},{n:'S世界杯',v:'世界杯4K'},{n:'S斯诺克',v:'斯诺克4K'},{n:'T天下足球',v:'天下足球4K'},{n:'UFC',v:'UFC4K'},{n:'W网球',v:'网球4K'},{n:'X小罗',v:'小罗4K'},{n:'X西甲',v:'西甲4K'},{n:'Y英超',v:'英超4K'},{n:'Y意甲',v:'意甲4K'},{n:'Z詹姆斯',v:'詹姆斯4K'}]}],
|
||||
相声小品:[{key:'tid',name:'分类','value':[{n:'全部',v:'相声小品'},{n:'C陈佩斯',v:'陈佩斯小品4K'},{n:'C春晚小品',v:'春晚小品4K'},{n:'C曹云金',v:'曹云金相声4K'},{n:'D单口相声',v:'单口相声4K'},{n:'D德云社',v:'德云社小品4K'},{n:'E二人转',v:'二人转4K'},{n:'F冯巩',v:'冯巩小品4K'},{n:'G郭德纲',v:'郭德纲相声4K'},{n:'G郭冬临',v:'郭冬临小品4K'},{n:'G郭达',v:'郭达小品4K'},{n:'K开心麻花',v:'开心麻花小品4K'},{n:'P评书',v:'评书4K'},{n:'P潘长江',v:'潘长江小品4K'},{n:'Q青曲社',v:'青曲社相声4K'},{n:'Q群口相声',v:'群口相声4K'},{n:'S宋小宝',v:'宋小宝小品4K'},{n:'W文松',v:'文松小品4K'},{n:'X小曲',v:'小曲相声4K'},{n:'X喜剧综艺',v:'喜剧综艺4K'},{n:'Y严顺开',v:'严顺开小品4K'},{n:'Y岳云鹏',v:'岳云鹏相声小品4K'},{n:'Z赵本山',v:'赵本山小品4K'},{n:'Z赵丽蓉',v:'赵丽蓉小品4K'}]}],
|
||||
戏曲:[{key:'tid',name:'分类','value':[{n:'全部',v:'戏曲4K'},{n:'B梆子腔',v:'梆子腔戏曲4K'},{n:'C采茶戏',v:'采茶戏戏曲4K'},{n:'C潮剧',v:'潮剧戏曲4K'},{n:'C彩调',v:'彩调戏曲4K'},{n:'C川剧',v:'川剧戏曲4K'},{n:'D滇剧',v:'滇剧戏曲4K'},{n:'D傣剧',v:'傣剧戏曲4K'},{n:'E二人台',v:'二人台戏曲4K'},{n:'G高腔',v:'高腔戏曲4K'},{n:'G高甲戏',v:'高甲戏戏曲4K'},{n:'G赣剧',v:'赣剧戏曲4K'},{n:'G桂剧',v:'桂剧戏曲4K'},{n:'H黄梅戏',v:'黄梅戏戏曲4K'},{n:'H河北梆子',v:'河北梆子戏曲4K'},{n:'H河南曲剧',v:'河南曲剧戏曲4K'},{n:'H淮剧',v:'淮剧戏曲4K'},{n:'H沪剧',v:'沪剧戏曲4K'},{n:'H滑稽戏',v:'滑稽戏戏曲4K'},{n:'H徽剧',v:'徽剧4K'},{n:'H汉剧',v:'汉剧戏曲4K'},{n:'H湖南花鼓戏',v:'湖南花鼓戏戏曲4K'},{n:'J京剧',v:'京剧戏曲4K'},{n:'J晋剧',v:'晋剧戏曲4K'},{n:'J吉剧',v:'吉剧戏曲4K'},{n:'K昆曲',v:'昆曲戏曲4K'},{n:'L梨园戏',v:'梨园戏戏曲4K'},{n:'L龙江剧',v:'龙江剧戏曲4K'},{n:'M闽剧',v:'闽剧戏曲4K'},{n:'P评剧',v:'评剧戏曲4K'},{n:'P蒲剧',v:'蒲剧戏曲4K'},{n:'P皮影戏',v:'皮影戏戏曲4K'},{n:'P莆仙戏',v:'莆仙戏戏曲4K'},{n:'Q黔剧',v:'黔剧戏曲4K'},{n:'Q祁剧',v:'祁剧戏曲4K'},{n:'Q秦腔',v:'秦腔戏曲4K'},{n:'S上党梆子',v:'上党梆子戏曲4K'},{n:'S山东梆子',v:'山东梆子戏曲4K'},{n:'S绍剧',v:'绍剧戏曲4K'},{n:'W武安平调',v:'武安平调戏曲4K'},{n:'W婺剧',v:'婺剧戏曲4K'},{n:'X湘剧',v:'湘剧戏曲4K'},{n:'Y越剧',v:'越剧戏曲4K'},{n:'Y豫剧',v:'豫剧戏曲4K'},{n:'Y雁剧',v:'雁剧戏曲4K'},{n:'Y越调',v:'越调戏曲4K'},{n:'Y粤剧',v:'粤剧戏曲4K'},{n:'Z壮剧',v:'壮剧戏曲4K'},{n:'Z藏剧',v:'藏剧戏曲4K'}]}],
|
||||
儿童:[{key:'tid',name:'分类','value':[{n:'全部',v:'儿童'},{n:'教育',v:'儿童早教'},{n:'歌曲',v:'贝瓦儿歌'},{n:'舞蹈',v:'儿童舞蹈'},{n:'成语故事',v:'儿童成语故事'},{n:'安全教育',v:'儿童安全教育'},{n:'睡前故事',v:'儿童睡前故事'},{n:'贝乐虎',v:'贝乐虎'},{n:'宝宝巴士',v:'宝宝巴士'},{n:'儿童好声音',v:'儿童好声音'}]}],
|
||||
小姐姐4K:[{key:'tid',name:'分类','value':[{n:'全部',v:'小姐姐4K'},{n:'比基尼',v:'比基尼美女4K'},{n:'内衣',v:'内衣模特4K'},{n:'车模',v:'美女车模4K'},{n:'健身',v:'美女健身4K'},{n:'翻唱',v:'美女翻唱4K'},{n:'舞蹈',v:'美女舞蹈4K'},{n:'美妆',v:'美女美妆4K'},{n:'Cos',v:'美女Cos4K'},{n:'户外',v:'美女户外4K'},{n:'居家',v:'美女居家4K'},{n:'自习',v:'自习小姐姐4K'},{n:'职场',v:'职场美女4K'},{n:'工地',v:'工地美女4K'},{n:'安静',v:'安静小姐姐4K'},{n:'活泼',v:'活泼小姐姐4K'}]}],
|
||||
热门:[{key:'tid',name:'分类','value':[{n:'全部',v:'热门'},{n:'刀郎',v:'刀郎'},{n:'罗刹海市',v:'罗刹海市'},{n:'狂飙',v:'狂飙'},{n:'淄博烧烤',v:'淄博烧烤'},{n:'原神',v:'原神'},{n:'漫长的季节',v:'漫长的季节'},{n:'AI',v:'AI'},{n:'俄乌',v:'俄乌'},{n:'ChatGPT',v:'ChatGPT'},{n:'重启人生',v:'重启人生'},{n:'棋手战鹰',v:'棋手战鹰'},{n:'中国奇谭',v:'中国奇谭'},{n:'三体',v:'三体'},{n:'刘慈欣',v:'刘慈欣'},{n:'鬼吹灯',v:'鬼吹灯'},{n:'天下霸唱',v:'天下霸唱'}]}],
|
||||
旅行探险:[{key:'tid',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:'冲浪'}]}]
|
||||
};
|
||||
let filOrd = {key:'order',name:'排序',value:[{n:'综合排序',v:'0'},{n:'最多点击',v:'click'},{n:'最新发布',v:'pubdate'},{n:'最多弹幕',v:'dm'},{n:'最多收藏',v:'stow'}]};
|
||||
filOrd['init'] = filOrd.value[0].v;
|
||||
let filDur = {key:'duration',name:'时长',value:[{n:'全部',v:'0'},{n:'60分钟以上',v:'4'},{n:'30~60分钟',v:'3'},{n:'10~30分钟',v:'2'},{n:'10分钟以下',v:'1'}]};
|
||||
filDur['init'] = filDur.value[0].v;
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
if (filterObj[cls.type_id]){
|
||||
filterObj[cls.type_id].push(filOrd, filDur);
|
||||
filterObj[cls.type_id][0]['init'] = filterObj[cls.type_id][0].value[0].v;
|
||||
} else {
|
||||
filterObj[cls.type_id] = [];
|
||||
filterObj[cls.type_id].push(filOrd, filDur)
|
||||
}
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
let html = HOST + '/x/web-interface/popular?ps=20';
|
||||
let data = JSON.parse(await request(html)).data.list;
|
||||
let videos = [];
|
||||
data.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.aid,
|
||||
vod_name: stripHtmlTag(it.title),
|
||||
vod_pic: it.pic,
|
||||
vod_remarks: '🔥 ' + it.vt_display || '',
|
||||
});
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
let html = HOST + '/x/web-interface/search/type?search_type=video&page=' + pg + '&keyword=' + (extend.tid || tid) + '&duration=' + (extend.duration || '') + '&order=' + (extend.order || '');
|
||||
let data = JSON.parse(await request(html)).data;
|
||||
let videos = [];
|
||||
data.result.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.aid,
|
||||
vod_name: stripHtmlTag(it.title),
|
||||
vod_pic: 'https:' + it.pic,
|
||||
vod_remarks: turnDHM(it.duration) || '',
|
||||
});
|
||||
});
|
||||
return JSON.stringify({
|
||||
page: parseInt(data.page),
|
||||
pagecount: data.numPages,
|
||||
limit: 20,
|
||||
total: data.numResults,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let data = JSON.parse(await request(HOST + '/x/web-interface/view?aid=' + id)).data;
|
||||
let vod = {
|
||||
vod_id: data.aid,
|
||||
vod_name: stripHtmlTag(data.title),
|
||||
vod_pic: data.pic,
|
||||
type_name: data.tname,
|
||||
vod_year: new Date(data.pubdate*1000).getFullYear(),
|
||||
vod_remarks: data.duration || '',
|
||||
vod_director: data.owner.name,
|
||||
vod_content: stripHtmlTag(data.desc),
|
||||
};
|
||||
let episodes = data.pages;
|
||||
let playurls = [];
|
||||
episodes.forEach(function(it) {
|
||||
let cid = it.cid;
|
||||
let part = it.part.replace('#', '﹟').replace('$', '﹩');
|
||||
playurls.push(
|
||||
part + '$' + data.aid + '_' + cid
|
||||
)
|
||||
});
|
||||
let playUrl = playurls.join('#');
|
||||
vod.vod_play_from = '道长在线';
|
||||
vod.vod_play_url = playUrl;
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
let ids = id.split('_');
|
||||
let html = HOST + '/x/player/playurl?avid=' + ids[0] + '&cid=' + ids[1] + '&qn=116';
|
||||
let data = JSON.parse(await request(html)).data.durl;
|
||||
let maxSize = -1;
|
||||
let position = -1;
|
||||
data.forEach(function(it, i) {
|
||||
if (maxSize < Number(it.size)) {
|
||||
maxSize = Number(it.size);
|
||||
position = i
|
||||
}
|
||||
});
|
||||
let purl = '';
|
||||
if (data.length > 0) {
|
||||
if (position === -1) {
|
||||
position = 0
|
||||
}
|
||||
purl = data[position].url
|
||||
}
|
||||
// console.debug('我的哔哩 purl =====>' + purl); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: purl,
|
||||
header: getMb(),
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
let html = HOST + '/x/web-interface/search/type?search_type=video&keyword=' + wd + '&page=' + pg;
|
||||
let data = JSON.parse(await request(html)).data;
|
||||
let videos = [];
|
||||
data.result.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.aid,
|
||||
vod_name: stripHtmlTag(it.title),
|
||||
vod_pic: 'https:' + it.pic,
|
||||
vod_remarks: turnDHM(it.duration) || '',
|
||||
});
|
||||
});
|
||||
return JSON.stringify({
|
||||
page: parseInt(data.page),
|
||||
pagecount: data.numPages,
|
||||
limit: 20,
|
||||
total: data.numResults,
|
||||
list: videos,
|
||||
land: 1,
|
||||
ratio: 1.78,
|
||||
});
|
||||
}
|
||||
|
||||
function getHeader(cookie) {
|
||||
let header = {};
|
||||
header['cookie'] = cookie;
|
||||
header['User-Agent'] = PC_UA;
|
||||
header['Referer'] = 'https://www.bilibili.com';
|
||||
return header;
|
||||
}
|
||||
|
||||
function getMb() {
|
||||
return getHeader(cookie);
|
||||
}
|
||||
|
||||
function stripHtmlTag(src) {
|
||||
return src
|
||||
.replace(/<\/?[^>]+(>|$)/g, '')
|
||||
.replace(/&.{1,5};/g, '')
|
||||
.replace(/\s{2,}/g, ' ');
|
||||
}
|
||||
|
||||
function turnDHM(duration) {
|
||||
let min = duration.split(':')[0];
|
||||
let sec = duration.split(':')[1];
|
||||
if (min == 0) {
|
||||
return sec + '秒';
|
||||
} else if (0 < min && min < 60) {
|
||||
return min + '分';
|
||||
} else if (60 <= min && min < 1440) {
|
||||
if (min % 60 == 0) {
|
||||
let h = min / 60;
|
||||
return h + '小时';
|
||||
} else {
|
||||
let h = min / 60;
|
||||
h = (h + '').split('.')[0];
|
||||
let m = min % 60;
|
||||
return h + '小时' + m + '分';
|
||||
}
|
||||
} else if (min >= 1440) {
|
||||
let d = min / 60 / 24;
|
||||
d = (d + '').split('.')[0];
|
||||
let h = min / 60 % 24;
|
||||
h = (h + '').split('.')[0];
|
||||
let m = min % 60;
|
||||
let dhm = '';
|
||||
if (d > 0) {
|
||||
dhm = d + '天'
|
||||
}
|
||||
if (h >= 1) {
|
||||
dhm = dhm + h + '小时'
|
||||
}
|
||||
if (m > 0) {
|
||||
dhm = dhm + m + '分'
|
||||
}
|
||||
return dhm;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
213
0130/道长JS/cat/ng_open.js
Normal file
213
0130/道长JS/cat/ng_open.js
Normal file
@ -0,0 +1,213 @@
|
||||
import { Crypto, jinja2, _ } from './lib/cat.js';
|
||||
|
||||
let key = '南瓜影视';
|
||||
let HOST = 'http://ys.changmengyun.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
let MOBILE_UA = 'okhttp/4.6.0'
|
||||
|
||||
async function request(reqUrl) {
|
||||
let t = new Date().getTime().toString();
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'version_name': '1.0.6',
|
||||
'version_code': '6',
|
||||
'package_name': 'com.app.nanguatv',
|
||||
'sign': Crypto.MD5('c431ea542cee9679#uBFszdEM0oL0JRn@' + t).toString().toLowerCase(),
|
||||
'imei': 'c431ea542cee9679',
|
||||
'timeMillis': t,
|
||||
'User-Agent': MOBILE_UA
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
let data = JSON.parse(await request(HOST + '/api.php/provide/home_nav'));
|
||||
let classes = [];
|
||||
for (const key in data) {
|
||||
if (data[key].name != '精选')
|
||||
classes.push({
|
||||
type_id: data[key].id,
|
||||
type_name: data[key].name,
|
||||
});
|
||||
}
|
||||
let filterObj = {
|
||||
"2":[{"key":"class","name":"类型","value":[{"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":"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":"10年代","v":"10年代"},{"n":"00年代","v":"00年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"}]},{"key":"by","name":"排序","value":[{"n":"热播榜","v":"热播榜"},{"n":"好评榜","v":"好评榜"},{"n":"新上线","v":"新上线"}]}],
|
||||
"1":[{"key":"class","name":"类型","value":[{"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":"台湾地区"},{"n":"泰国","v":"泰国"},{"n":"台湾地区","v":"台湾地区"},{"n":"印度","v":"印度"},{"n":"其它","v":"其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"年份"},{"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":"10年代","v":"10年代"},{"n":"00年代","v":"00年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"}]},{"key":"by","name":"排序","value":[{"n":"热播榜","v":"热播榜"},{"n":"好评榜","v":"好评榜"},{"n":"新上线","v":"新上线"}]}],
|
||||
"4":[{"key":"class","name":"类型","value":[{"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":"其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"年份"},{"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":"10年代","v":"10年代"},{"n":"00年代","v":"00年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"}]},{"key":"by","name":"排序","value":[{"n":"热播榜","v":"热播榜"},{"n":"新上线","v":"新上线"}]},{"key":"total","name":"状态","value":[{"n":"全部","v":"状态"},{"n":"连载","v":"连载"},{"n":"完结","v":"完结"}]}],
|
||||
"3":[{"key":"class","name":"类型","value":[{"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":"其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"年份"},{"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":"10年代","v":"10年代"},{"n":"00年代","v":"00年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"}]},{"key":"by","name":"排序","value":[{"n":"热播榜","v":"热播榜"},{"n":"新上线","v":"新上线"}]}],
|
||||
"46":[{"key":"class","name":"类型","value":[{"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":"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":"10年代","v":"10年代"},{"n":"00年代","v":"00年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"}]},{"key":"by","name":"排序","value":[{"n":"热播榜","v":"热播榜"},{"n":"好评榜","v":"好评榜"},{"n":"新上线","v":"新上线"}]}]
|
||||
};
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
let data = JSON.parse(await request(HOST + '/api.php/provide/vod_rank?app=ylys&sort_type=month&imei=c431ea542cee9679&id=2&page=1'));
|
||||
let videos = [];
|
||||
data.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.id,
|
||||
vod_name: it.name,
|
||||
vod_pic: it.img,
|
||||
vod_remarks: it.remarks,
|
||||
});
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
let reqUrl = HOST + '/api.php/provide/vod_list?app=ylys&id=' + tid + '&page=' + pg + '&imei=c431ea542cee9679&';
|
||||
reqUrl += jinja2('area={{ext.area}}&year={{ext.year}}&type={{ext.class}}&total={{ext.total}}&order={{ext.by}}', { ext: extend });
|
||||
// let data = JSON.parse(await request(reqUrl));
|
||||
let data = JSON.parse(await request(reqUrl)).list;
|
||||
let videos = [];
|
||||
data.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.id,
|
||||
vod_name: it.name,
|
||||
vod_pic: it.img,
|
||||
vod_remarks: it.remarks,
|
||||
});
|
||||
});
|
||||
let pgChk = JSON.parse(await request(HOST + '/api.php/provide/vod_list?app=ylys&id=' + tid + '&page=' + (parseInt(pg) + 1) + '&imei=c431ea542cee9679&')).msg;
|
||||
const pgCount = (pgChk == 'ok') ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 20,
|
||||
total: 20 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let data = JSON.parse(await request(HOST + '/api.php/provide/vod_detail?app=ylys&imei=c431ea542cee9679&id=' + id)).data;
|
||||
let vod = {
|
||||
vod_id: data.id,
|
||||
vod_name: data.name,
|
||||
vod_pic: data.img,
|
||||
type_name: data.type,
|
||||
vod_year: data.year,
|
||||
vod_remarks: '更新至: ' + data.msg + ' / 评分: ' + data.score,
|
||||
vod_content: stripHtmlTag(data.info),
|
||||
};
|
||||
let episodes = data.player_info;
|
||||
let playlist = {};
|
||||
episodes.forEach(function(it) {
|
||||
let playurls = it.video_info;
|
||||
playurls.forEach(function(playurl) {
|
||||
let source = it.show;
|
||||
let t = formatPlayUrl(vod.vod_name, playurl.name);
|
||||
if (t.length == 0) t = playurl.name.trim();
|
||||
if (!playlist.hasOwnProperty(source)) {
|
||||
playlist[source] = [];
|
||||
}
|
||||
playlist[source].push(t + '$' + playurl.url);
|
||||
});
|
||||
});
|
||||
vod.vod_play_from = _.keys(playlist).join('$$$');
|
||||
let urls = _.values(playlist);
|
||||
let vod_play_url = [];
|
||||
urls.forEach(function(it) {
|
||||
vod_play_url.push(it.join('#'));
|
||||
});
|
||||
vod.vod_play_url = vod_play_url.join('$$$');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
try {
|
||||
if (id.indexOf('m3u8') != -1) {
|
||||
let mjurl = id.split('url=')[1]
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: mjurl,
|
||||
});
|
||||
} else if (id.indexOf(',') != -1) {
|
||||
let mjurl = id.split(',')[1]
|
||||
let jData = JSON.parse(await request(mjurl));
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: jData.data.url,
|
||||
});
|
||||
} else {
|
||||
let mjurl = 'http://43.154.104.152:1234/jhapi/cs.php?url=' + id.split('url=')[1]
|
||||
let jData = JSON.parse(await request(mjurl));
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: jData.data.url,
|
||||
});
|
||||
}
|
||||
} catch (e) {
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
let data = JSON.parse(await request(HOST + '/api.php/provide/search_result_more?app=ylys&video_name=' + wd + '&pageSize=20&tid=0&imei=c431ea542cee9679&page=' + pg, 'okhttp/4.6.0')).data;
|
||||
let videos = [];
|
||||
data.forEach(function(it) {
|
||||
videos.push({
|
||||
vod_id: it.id,
|
||||
vod_name: it.video_name,
|
||||
vod_pic: it.img,
|
||||
vod_remarks: it.qingxidu + '/' + it.category,
|
||||
});
|
||||
});
|
||||
let pgChk = JSON.parse(await request(HOST + '/api.php/provide/search_result_more?app=ylys&video_name=' + wd + '&pageSize=20&tid=0&imei=c431ea542cee9679&page=' + (parseInt(pg) + 1), 'okhttp/4.6.0')).msg;
|
||||
const pgCount = (pgChk == 'ok') ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 20,
|
||||
total: 20 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
function stripHtmlTag(src) {
|
||||
return src
|
||||
.replace(/<\/?[^>]+(>|$)/g, '')
|
||||
.replace(/&.{1,5};/g, '')
|
||||
.replace(/\s{2,}/g, ' ');
|
||||
}
|
||||
|
||||
function formatPlayUrl(src, name) {
|
||||
return name
|
||||
.trim()
|
||||
.replaceAll(src, '')
|
||||
.replace(/<|>|《|》/g, '')
|
||||
.replace(/\$|#/g, ' ')
|
||||
.trim();
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/nivod_op.js
Normal file
1
0130/道长JS/cat/nivod_op.js
Normal file
File diff suppressed because one or more lines are too long
135
0130/道长JS/cat/sharenice_open.js
Normal file
135
0130/道长JS/cat/sharenice_open.js
Normal file
@ -0,0 +1,135 @@
|
||||
// 搜索滑块验证
|
||||
import { load, _ } from './lib/cat.js';
|
||||
|
||||
let key = '短视频';
|
||||
let HOST = 'http://www.sharenice.net';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
let PC_UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || PC_UA,
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
function clsjoin(cls) {
|
||||
_.each(cls, (s) => {
|
||||
let typeId = s.attribs['href'];
|
||||
typeId = typeId.substring(typeId.lastIndexOf('t/') + 2);
|
||||
classes.push({
|
||||
type_id: typeId,
|
||||
type_name: s.children[0].data,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
let classes = [];
|
||||
async function home(filter) {
|
||||
let filterObj = {};
|
||||
let html = await request(HOST);
|
||||
let $ = load(html);
|
||||
let series = $('div.nav > ul > li > a[href*=net/]');
|
||||
let tag = $('div.hot-tags-list > a[href*=net]');
|
||||
clsjoin(series);
|
||||
clsjoin(tag);
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
let link = HOST + '/t-576O5aWz';
|
||||
let html = await request(link);
|
||||
let $ = load(html);
|
||||
let items = $('div.item-box ul li');
|
||||
let videos = _.map(items, (item) => {
|
||||
let a = $(item).find('a:first')[0];
|
||||
let img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
let link = HOST + '/' + tid + '?page=' + pg;
|
||||
let html = await request(link);
|
||||
let $ = load(html);
|
||||
let items = $('div.item-box ul li');
|
||||
let videos = _.map(items, (item) => {
|
||||
let a = $(item).find('a:first')[0];
|
||||
let img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
let hasMore = $('ul.pagination > li > a:contains(»)').length > 0;
|
||||
let pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 16,
|
||||
total: 16 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: '',
|
||||
};
|
||||
let playlist = ['观看视频' + '$' + id];
|
||||
vod.vod_play_from = '道长在线';
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
let html = await request(id);
|
||||
let $ = load(html);
|
||||
let playUrl = $('div.video-play-box').find('video:first')[0].attribs.src + '#.mp4';
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
182
0130/道长JS/cat/subaibai_open.js
Normal file
182
0130/道长JS/cat/subaibai_open.js
Normal file
@ -0,0 +1,182 @@
|
||||
// 搜索数字验证
|
||||
// 20230812 变更 分类&筛选
|
||||
import { Crypto, load, _ } from './lib/cat.js';
|
||||
let key = "素白白",
|
||||
url = "https://www.subaibaiys.com",
|
||||
siteKey = "",
|
||||
siteType = 0;
|
||||
const UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",
|
||||
cookie = {};
|
||||
|
||||
async function request(reqUrl, referer, mth, data, hd) {
|
||||
var headers = {
|
||||
"User-Agent": UA,
|
||||
Cookie: _.map(cookie, (value, key) => key + "=" + value).join(";")
|
||||
},
|
||||
referer = (referer && (headers.referer = encodeURIComponent(referer)), await req(reqUrl, {
|
||||
method: mth || "get",
|
||||
headers: headers,
|
||||
data: data,
|
||||
postType: "post" === mth ? "form" : ""
|
||||
}));
|
||||
if (referer.headers["set-cookie"])
|
||||
for (const c of (_.isArray(referer.headers["set-cookie"]) ? referer.headers["set-cookie"].join(";") : referer.headers["set-cookie"]).split(";")) {
|
||||
var tmp = c.trim();
|
||||
if (tmp.startsWith("result=")) return cookie.result = tmp.substring(7), request(reqUrl, reqUrl, "post", {
|
||||
result: cookie.result
|
||||
});
|
||||
if (tmp.startsWith("esc_search_captcha=1")) return cookie.esc_search_captcha = 1, delete cookie.result, request(reqUrl)
|
||||
}
|
||||
return referer.content
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey, siteType = cfg.stype
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
let classes = [{"type_id":"movie_bt","type_name":"影视筛选"},{"type_id":"new-movie","type_name":"电影"},{"type_id":"tv-drama","type_name":"电视剧"},{"type_id":"hot-month","type_name":"热门电影"},{"type_id":"high-movie","type_name":"高分电影"},{"type_id":"cartoon-movie","type_name":"动漫电影"},{"type_id":"hongkong-movie","type_name":"香港经典电影"},{"type_id":"domestic-drama","type_name":"国产剧"},{"type_id":"american-drama","type_name":"欧美剧"},{"type_id":"korean-drama","type_name":"韩剧"},{"type_id":"anime-drama","type_name":"动漫剧"},{"type_id":"marvel-movies","type_name":"漫威宇宙电影系列"},{"type_id":"fastfurious","type_name":"速度与激情电影系列"},{"type_id":"zero-zero-seven","type_name":"007系列(25部正传+2部外传)"}];
|
||||
let filterObj = {
|
||||
"movie_bt":[{"key":"catedd","name":"分类","value":[{"n":"全部","v":""},{"v":"/movie_bt_series/dongmanju","n":"动漫剧"},{"v":"/movie_bt_series/dongmandy","n":"动漫电影"},{"v":"/movie_bt_series/yindudy","n":"印度电影"},{"v":"/movie_bt_series/guochanju","n":"国产剧"},{"v":"/movie_bt_series/guochandy","n":"国产电影"},{"v":"/movie_bt_series/riju","n":"日剧"},{"v":"/movie_bt_series/rihandy","n":"日韩电影"},{"v":"/movie_bt_series/oumeiju","n":"欧美剧"},{"v":"/movie_bt_series/oumeidy","n":"欧美电影"},{"v":"/movie_bt_series/taiju","n":"泰剧"},{"v":"/movie_bt_series/thaidy","n":"泰国电影"},{"v":"/movie_bt_series/gangju","n":"港台剧"},{"v":"/movie_bt_series/gangtaidy","n":"港台电影"},{"v":"/movie_bt_series/documentary","n":"纪录片"},{"v":"/movie_bt_series/zongyi","n":"综艺"},{"v":"/movie_bt_series/hanju","n":"韩剧"},{"v":"/movie_bt_series/xianggangdy","n":"香港经典电影"}]},{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"v":"/movie_bt_cat/bhutan","n":"不丹"},{"v":"/movie_bt_cat/china","n":"中国"},{"v":"/movie_bt_cat/china-taiwan","n":"中国台湾"},{"v":"/movie_bt_cat/china-mainland","n":"中国大陆"},{"v":"/movie_bt_cat/china-hongkong","n":"中国香港"},{"v":"/movie_bt_cat/denmark","n":"丹麦"},{"v":"/movie_bt_cat/ukraine","n":"乌克兰"},{"v":"/movie_bt_cat/uruguay","n":"乌拉圭"},{"v":"/movie_bt_cat/israel","n":"以色列"},{"v":"/movie_bt_cat/iraq","n":"伊拉克"},{"v":"/movie_bt_cat/iran","n":"伊朗"},{"v":"/movie_bt_cat/russia","n":"俄罗斯"},{"v":"/movie_bt_cat/bulgaria","n":"保加利亚"},{"v":"/movie_bt_cat/croatia","n":"克罗地亚"},{"v":"/movie_bt_cat/iceland","n":"冰岛"},{"v":"/movie_bt_cat/canada","n":"加拿大"},{"v":"/movie_bt_cat/hungary","n":"匈牙利"},{"v":"/movie_bt_cat/south-africa","n":"南非"},{"v":"/movie_bt_cat/botswana","n":"博茨瓦纳"},{"v":"/movie_bt_cat/qatar","n":"卡塔尔"},{"v":"/movie_bt_cat/luxembourg","n":"卢森堡"},{"v":"/movie_bt_cat/india","n":"印度"},{"v":"/movie_bt_cat/indonesia","n":"印度尼西亚"},{"v":"/movie_bt_cat/kazakhstan","n":"哈萨克斯坦"},{"v":"/movie_bt_cat/colombia","n":"哥伦比亚"},{"v":"/movie_bt_cat/turkey","n":"土耳其"},{"v":"/movie_bt_cat/serbia","n":"塞尔维亚"},{"v":"/movie_bt_cat/cyprus","n":"塞浦路斯"},{"v":"/movie_bt_cat/mexico","n":"墨西哥"},{"v":"/movie_bt_cat/dominica","n":"多米尼加"},{"v":"/movie_bt_cat/austria","n":"奥地利"},{"v":"/movie_bt_cat/venezuela","n":"委内瑞拉"},{"v":"/movie_bt_cat/nigeria","n":"尼日利亚"},{"v":"/movie_bt_cat/巴基斯坦","n":"巴基斯坦"},{"v":"/movie_bt_cat/paraguay","n":"巴拉圭"},{"v":"/movie_bt_cat/brazil","n":"巴西"},{"v":"/movie_bt_cat/greece","n":"希腊"},{"v":"/movie_bt_cat/germany","n":"德国"},{"v":"/movie_bt_cat/italy","n":"意大利"},{"v":"/movie_bt_cat/latvia","n":"拉脱维亚"},{"v":"/movie_bt_cat/norway","n":"挪威"},{"v":"/movie_bt_cat/chech","n":"捷克"},{"v":"/movie_bt_cat/摩洛哥","n":"摩洛哥"},{"v":"/movie_bt_cat/斯洛伐克","n":"斯洛伐克"},{"v":"/movie_bt_cat/slovenia","n":"斯洛文尼亚"},{"v":"/movie_bt_cat/singapore","n":"新加坡"},{"v":"/movie_bt_cat/zealand","n":"新西兰"},{"v":"/movie_bt_cat/japan","n":"日本"},{"v":"/movie_bt_cat/chile","n":"智利"},{"v":"/movie_bt_cat/north-korea","n":"朝鲜"},{"v":"/movie_bt_cat/cambodia","n":"柬埔寨"},{"v":"/movie_bt_cat/georgia","n":"格鲁吉亚"},{"v":"/movie_bt_cat/belgium","n":"比利时"},{"v":"/movie_bt_cat/saudi-arabia","n":"沙特阿拉伯"},{"v":"/movie_bt_cat/france","n":"法国"},{"v":"/movie_bt_cat/poland","n":"波兰"},{"v":"/movie_bt_cat/puertorco","n":"波多黎各"},{"v":"/movie_bt_cat/bohei","n":"波黑"},{"v":"/movie_bt_cat/thailand","n":"泰国"},{"v":"/movie_bt_cat/australia","n":"澳大利亚"},{"v":"/movie_bt_cat/ireland","n":"爱尔兰"},{"v":"/movie_bt_cat/estonia","n":"爱沙尼亚"},{"v":"/movie_bt_cat/sweden","n":"瑞典"},{"v":"/movie_bt_cat/switzerland","n":"瑞士"},{"v":"/movie_bt_cat/belarus","n":"白俄罗斯"},{"v":"/movie_bt_cat/peru","n":"秘鲁"},{"v":"/movie_bt_cat/tunisia","n":"突尼斯"},{"v":"/movie_bt_cat/lithuania","n":"立陶宛"},{"v":"/movie_bt_cat/romania","n":"罗马尼亚"},{"v":"/movie_bt_cat/america","n":"美国"},{"v":"/movie_bt_cat/finland","n":"芬兰"},{"v":"/movie_bt_cat/sovietunion","n":"苏联"},{"v":"/movie_bt_cat/england","n":"英国"},{"v":"/movie_bt_cat/netherlands","n":"荷兰"},{"v":"/movie_bt_cat/philippines","n":"菲律宾"},{"v":"/movie_bt_cat/葡萄牙","n":"葡萄牙"},{"v":"/movie_bt_cat/west-germany","n":"西德"},{"v":"/movie_bt_cat/spain","n":"西班牙"},{"v":"/movie_bt_cat/vietnam","n":"越南"},{"v":"/movie_bt_cat/argentina","n":"阿根廷"},{"v":"/movie_bt_cat/korea","n":"韩国"},{"v":"/movie_bt_cat/malaysia","n":"马来西亚"},{"v":"/movie_bt_cat/马耳他","n":"马耳他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"new-movie":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"tv-drama":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"hot-month":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"high-movie":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"cartoon-movie":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"hongkong-movie":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"domestic-drama":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"american-drama":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"korean-drama":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}],
|
||||
"anime-drama":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/pop-popular","n":"POP流行"},{"v":"/movie_bt_tags/biography","n":"传记"},{"v":"/movie_bt_tags/child","n":"儿童"},{"v":"/movie_bt_tags/adventure","n":"冒险"},{"v":"/movie_bt_tags/plot","n":"剧情"},{"v":"/movie_bt_tags/action","n":"动作"},{"v":"/movie_bt_tags/anime","n":"动漫"},{"v":"/movie_bt_tags/animation","n":"动画"},{"v":"/movie_bt_tags/history","n":"历史"},{"v":"/movie_bt_tags/costume","n":"古装"},{"v":"/movie_bt_tags/antiquity","n":"古风"},{"v":"/movie_bt_tags/homosexual","n":"同性"},{"v":"/movie_bt_tags/comedy","n":"喜剧"},{"v":"/movie_bt_tags/fantasy","n":"奇幻"},{"v":"/movie_bt_tags/family","n":"家庭"},{"v":"/movie_bt_tags/terror","n":"恐怖"},{"v":"/movie_bt_tags/suspense","n":"悬疑"},{"v":"/movie_bt_tags/erotic","n":"情色"},{"v":"/movie_bt_tags/thriller","n":"惊悚"},{"v":"/movie_bt_tags/drama","n":"戏曲"},{"v":"/movie_bt_tags/war","n":"战争"},{"v":"/movie_bt_tags/latin","n":"拉丁"},{"v":"/movie_bt_tags/funny","n":"搞笑"},{"v":"/movie_bt_tags/campus","n":"校园"},{"v":"/movie_bt_tags/song-and-dance","n":"歌舞"},{"v":"/movie_bt_tags/martial-arts","n":"武侠"},{"v":"/movie_bt_tags/disaster","n":"灾难"},{"v":"/movie_bt_tags/love","n":"爱情"},{"v":"/movie_bt_tags/crime","n":"犯罪"},{"v":"/movie_bt_tags/fancy","n":"玄幻"},{"v":"/movie_bt_tags/reality-show","n":"真人秀"},{"v":"/movie_bt_tags/short-film","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/documentary","n":"纪录片"},{"v":"/movie_bt_tags/talkshow","n":"脱口秀"},{"v":"/movie_bt_tags/stageart","n":"舞台艺术"},{"v":"/movie_bt_tags/west","n":"西部"},{"v":"/movie_bt_tags/sport","n":"运动"},{"v":"/movie_bt_tags/youth","n":"青春"},{"v":"/movie_bt_tags/music","n":"音乐"},{"v":"/movie_bt_tags/ghost","n":"鬼怪"},{"v":"/movie_bt_tags/black-film","n":"黑色电影"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1981","n":"1981"},{"v":"/year/1980","n":"1980"},{"v":"/year/1979","n":"1979"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1971","n":"1971"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1968","n":"1968"},{"v":"/year/1967","n":"1967"},{"v":"/year/1966","n":"1966"},{"v":"/year/1965","n":"1965"},{"v":"/year/1964","n":"1964"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1954","n":"1954"},{"v":"/year/1952","n":"1952"},{"v":"/year/1950","n":"1950"},{"v":"/year/1949","n":"1949"},{"v":"/year/1948","n":"1948"},{"v":"/year/1940","n":"1940"},{"v":"/year/1939","n":"1939"},{"v":"/year/1925","n":"1925"}]}]
|
||||
};
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
return "{}"
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
var link = url + '/' + tid + (extend.area || '') + (extend.year || '') + (extend.class || '') + (extend.catedd || '') + '/page/' + pg;
|
||||
var html = await request(link);
|
||||
var $ = load(html);
|
||||
var items = $('div.mrb > ul > li');
|
||||
var videos = _.map(items, (item) => {
|
||||
var img = $(item).find('img:first')[0];
|
||||
var a = $(item).find('a:first')[0];
|
||||
var hdinfo = $($(item).find('div.hdinfo')[0]).text().trim();
|
||||
var item = $($(item).find('div.jidi')[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/movie\/(.*).html/g, '$1'),
|
||||
vod_name: img.attribs.alt,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: item || hdinfo || ''
|
||||
};
|
||||
});
|
||||
var hasMore = $('div.mrb > div.pagenavi_txt > a:contains(>)').length > 0;
|
||||
var pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 20,
|
||||
total: 20 * pgCount,
|
||||
list: videos
|
||||
})
|
||||
}
|
||||
|
||||
function stripHtmlTag(src) {
|
||||
return src.replace(/<\/?[^>]+(>|$)/g, "").replace(/&.{1,5};/g, "").replace(/\s{2,}/g, " ")
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
var html = await request(url + "/movie/" + id + ".html"),
|
||||
$ = load(html),
|
||||
html = $("ul.moviedteail_list > li"),
|
||||
vod = {
|
||||
vod_id: id,
|
||||
vod_pic: $("div.dyimg img:first").attr("src"),
|
||||
vod_remarks: "",
|
||||
vod_content: stripHtmlTag($("div.yp_context").html()).trim()
|
||||
};
|
||||
for (const info of html) {
|
||||
var i = $(info).text().trim();
|
||||
i.startsWith("地区:") ? vod.vod_area = i.substring(3) : i.startsWith("年份:") ? vod.vod_year = i.substring(3) : i.startsWith("导演:") ? vod.vod_director = _.map($(info).find("a"), a => a.children[0].data).join("/") : i.startsWith("主演:") ? vod.vod_actor = _.map($(info).find("a"), a => a.children[0].data).join("/") : i.startsWith("语言:") && (vod.vod_lang = i.substring(3))
|
||||
}
|
||||
id = _.map($("div.paly_list_btn > a"), a => a.children[0].data + "$" + a.attribs.href.replace(/.*?\/v_play\/(.*).html/g, "$1"));
|
||||
return vod.vod_play_from = key, vod.vod_play_url = id.join("#"), JSON.stringify({
|
||||
list: [vod]
|
||||
})
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const link = url + "/v_play/" + id + ".html",
|
||||
html = await request(link),
|
||||
$ = load(html),
|
||||
iframe = $("body iframe[src*=Cloud]");
|
||||
if (0 < iframe.length) {
|
||||
const iframeHtml = (await req(iframe[0].attribs.src, {
|
||||
headers: {
|
||||
Referer: link,
|
||||
"User-Agent": UA
|
||||
}
|
||||
})).content;
|
||||
let code = iframeHtml.match(/var url = '(.*?)'/)[1].split("").reverse().join(""),
|
||||
temp = "";
|
||||
for (let i = 0; i < code.length; i += 2) temp += String.fromCharCode(parseInt(code[i] + code[i + 1], 16));
|
||||
const playUrl = temp.substring(0, (temp.length - 7) / 2) + temp.substring((temp.length - 7) / 2 + 7);
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl
|
||||
})
|
||||
} {
|
||||
const js = $("script:contains(window.wp_nonce)").html(),
|
||||
group = js.match(/(var.*)eval\((\w*\(\w*\))\)/),
|
||||
md5 = Crypto,
|
||||
result = eval(group[1] + group[2]),
|
||||
playUrl = result.match(/url:.*?['"](.*?)['"]/)[1];
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: playUrl
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
wd = await request(url + "/page/1?s=" + wd);
|
||||
const $ = load(wd);
|
||||
wd = $("div.search_list > ul > li"), wd = _.map(wd, item => {
|
||||
var img = $(item).find("img:first")[0],
|
||||
a = $(item).find("a:first")[0],
|
||||
hdinfo = $($(item).find("div.hdinfo")[0]).text().trim(),
|
||||
item = $($(item).find("div.jidi")[0]).text().trim();
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/movie\/(.*).html/g, "$1"),
|
||||
vod_name: img.attribs.alt,
|
||||
vod_pic: img.attribs["data-original"],
|
||||
vod_remarks: item || hdinfo || ""
|
||||
}
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: wd
|
||||
})
|
||||
}
|
||||
|
||||
function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
__jsEvalReturn
|
||||
};
|
1
0130/道长JS/cat/tutu_open.js
Normal file
1
0130/道长JS/cat/tutu_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1CfAxh0dXR1X29wZW4uanMsYXNzZXRzOi8vanMvbGliL2NhdC5qcxxfX2pzRXZhbFJldHVybgpkYXlqcwxqaW5qYTIGVXJpAl8OXzB4ZDg0NA5fMHg2NTMwEl8weDE5ZjY1OBJfMHgzODVhNTYSXzB4MTYxOTY5El8weDNhMGM5YRJfMHg1NjI1ZjkSXzB4MzkzYWIxEl8weDNmYjRjMRJfMHg0ZWFiYmESXzB4MzdmZmIxEl8weDIxZmVmNhJfMHg0NjY1YjISXzB4OWUzNDkzEl8weDUwOWE1YRJfMHg1MWI5ODMSXzB4NDM4YTUxEl8weDQ5YzdhOBJfMHgyNDFkM2MSXzB4NDg3MzExEl8weDRhOTBiZBJfMHgxMDM2MDkSXzB4NTkyNWMzEl8weDU1NWY0NBJfMHg1ZjNkN2USXzB4MmNmZGZjEl8weDM2OTViNBJfMHgzMDViZjkSXzB4NDA5YjYyEl8weGM0MWY2Ykh3cVYydzc1VEtUbytmTUtTdzY3Q25zS0F3NGJDa0R6RGtBPT0gWjN3MUJNS1lLZ05hdzZZPVhodHRwOi8vYXBpLnR0NTgudHYvY29uZmlnL2FwcGNvbmZpZ2ZzMT90dHNzPQxxeUp3ZHoMU1FqZXRRKGFwaS5waHAvdjEudm9kP3BhZ2U9CHB1c2gMdmFSTWNFCmxpbWl0DFlReGxNRBRVc2VyLUFnZW50CHR5cGUQTm53OUFjT08Mdm9kX2lkCElCUULcAiZjbGFzcz17e2V4dC5jbGFzc3xkZWZhdWx0KCIiKX19Jmxhbmc9e3tleHQubGFuZ3xkZWZhdWx0KCIiKX19JmFyZWE9e3tleHQuYXJlYXxkZWZhdWx0KCIiKX19JnllYXI9e3tleHQueWVhcnxkZWZhdWx0KCIiKX19JnBhZ2U9e3twYWdlfX0mYnk9e3tleHQuYnl8ZGVmYXVsdCgicm5kIil9fSZsaW1pdD0yNAhza2V5BjB4NQxyZWdpb24WbGFzdEluZGV4T2YIYXJlYSZyZXR1cm4gKGZ1bmN0aW9uKCkgDGNoYXJBdAZuYXZCYXBpLnBocC92MS52b2QvZGV0aWxsZGF0YT92b2RfaWQ9EnZpZGVvSW5mbxhwbGF5ZXJjb25maWcWdm9kX3JlbWFya3MSc3Vic3RyaW5nCHR1dHUwd3E4Nnc3M0NtTU9wSGNPZXc2SEN1eXc9CnBhcnNlMHc3OE9JOE9FZU1PSE5jT2tmWEhEbWNLMA5jb25zb2xlCHhCeTkGMHgzDHNvcnRCeQYweDIIY2VpbAhsYW5nCGxpc3QMa0dKZExOCFNWbXcUY2hhckNvZGVBdAZ1cmwIOW1WQRh2b2RfZGlyZWN0b3IMeVpTREtVGkFFUy9DVFIvUEtDUzcIZGF0YRZwbGF5ZXJfaW5mbwxhcHBrZXkIJnNjPQhIZ00zgAFPRGJEcThLNEY4T2ZOY09Rdzc0Z0Z4a1B3NVRDcmNPYVdIdkRvblY3dzdkTEttUER2OEtpZU1PT3c1ZEZ3ckU9Dmxhbmd1cmwOJnRva2VuPRB2b2RfbmFtZRRtVXNlckFnZW50CnNoaWZ0CHllYXIGMHg0GGZyb21DaGFyQ29kZQYweDEQdm9kX2FyZWEOaW5kZXhPZghOKW5sEnN0cmluZ2lmeQpzdHlwZQhhdG9iCnNsaWNlDnZvZF9waWMGMHgwEGxhbmd1YWdlCHNvcnRAe30uY29uc3RydWN0b3IoInJldHVybiB0aGlzIikoICkSdm9kX2FjdG9yDnJlcGxhY2UGJCQkCGUwaEUOY29udGVudAxPZ01kSGcMeElVWVpyGHc3N0R2c085d3E5Vgh0cmltEGVuZHNXaXRoCGNvZGWCAUFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89gAFUVVY1d3FOb01HNWF3NVkrU01PTXdxVENoY0ttTWNPekZEeFl3NnpDZzhPUUJzTzVSOEtpVWNLV01NT1p3b1k9DmZvckVhY2gIMHgyMQYweDdAUE1LK2QwUWZ3NTVCWjhPbEZTTENwTU85V3NPalpRPT0IMHg0NwgweDQ1eHdxZFJ3NmQ5R0MwRWVNS1l3NHpDZ01PY3c0N0N0Ui9EbkdqQ2pzS0Z3NWcwd3F3dldNT1F3NHpDaFJNPQYweDkIcFNWWQgweDU5CCNNJUQIMHgyYQgweDE0CDB4NTYGMHhhEl8weDM0YWQyZRJfMHhkODQ0YWQQXzB4NjUzMDASXzB4ZGQ4MjI2El8weGIwMjNlMxJfMHg1MzU1OWESXzB4MTc0YzE5El8weDFlYzYyZggweDRkCDB4MjYSXzB4MWMzZDk2El8weDJiMjBhYRJfMHg3ODk5NjMSXzB4MzM1OTI1El8weDEzYTFjNggweDEzCDB4M2UIMHg0YQgweDUwEl8weDUzYmNmMBJfMHgzZGRiNjISXzB4MWUzNDcyEl8weDRkZmJlNAgweDVkCDB4MzgEKTsMd2luZG93CDB4NDQIMHgzMBJfMHg1MzQyZmUSXzB4MTlhM2I3El8weDU1OWJlMBJfMHgxZmZlYWISXzB4MzE4ZDdmEl8weDM5NGI5ORJfMHg0NWJmNmYIMHgzYQgweDVlCDB4MjkSXzB4NTgwZGNmEl8weDE2OGJiMxJfMHhjMmYxZjQSXzB4NTkzODZkEl8weDEyZmRmMRJfMHg1Yjg4MWUSXzB4NWQzMDM1El8weGIwZDY2ZRJfMHgxMDNjNzUSXzB4NDFiMGEwEl8weDFiYTgwNggweDMyAiUEMDAIMHgxMAgweDMxJGRlY29kZVVSSUNvbXBvbmVudBJfMHgxODgyMDASXzB4NGIwMmEwEl8weDEwMTVmOCREYXJ0LzMuMCAoZGFydDppbykUdXNlci1hZ2VudAZyZXEOaGVhZGVycwgweDNkCGFlc1gIMHgxZgItEl8weDFlZDQ0MAgweDQxCDB4NDICfQgweDViEl8weDU0YTY4MBJfMHg2NDYyM2MSXzB4NDQ4NTdjEl8weDViNmZkMxJfMHgxNDRlNzgSXzB4NDkyMTQ4CDB4NTgIMHgyZiB3NHZDdDhLRHdvekNsZz09CDB4NDAIMHg1NAgweDQ4CDB4MTcGMHhjCDB4M2MIMHgyZAgweDI4CHc3MWYIMHgzNAgweDIwBjB4OAZsb2cIMHg0OQYweDYIMHgxYQgweDFkEnNlcnZlcl9pcAgweDIyEl8weDE3ZDczYRJfMHgzYmQ5YzISXzB4MTYwMDdjEl8weDRmNTMwMRJfMHg1OWEyOTISXzB4NWExNmU1El8weDM1ZWU1NRBfMHhkNTI2YxJfMHgyNzBhYjMIMHg0ZQgweDE5CDB4M2YIMHg0YhJfMHgxNzhiOTESXzB4NTA3NDg0El8weDIxOTNhNxJfMHg0NWIyMzQSXzB4NTQ5MWVlEl8weDE0MDZjMhJfMHgxZDdlMmMSXzB4NTcwYzRkEl8weDQzNDk1MBJfMHgyYTY5YmISXzB4MjNiYWFlEF8weDY1MTQzCDB4MmMSXzB4MmRhNTQyEl8weDgwY2ZmNBJfMHgzZTRiMGQSXzB4NDlmMzg0El8weDgxYTI5NxJfMHgyMGQ2NGESXzB4ODFjMTI2El8weDE2MzY5MBJfMHgyOGJmMWYSXzB4NWQ5NTBhEl8weDI2ZjFjYggweDE1El8weDE2MWRjOBJfMHgxZmI5YmESXzB4M2YzNTMxEl8weDNkOTdhZhJfMHgzYThkYTMSXzB4NTI0MmYzEl8weDEzOWZmYxJfMHgyNjdjNTgSXzB4MTU1YmQzEl8weDQ0OWM1MBJfMHg1OGNjYTcSXzB4MTlkYzIzEl8weDI4MTY3NxJfMHg0ZTc1Y2USXzB4MmIyMWY3El8weDJkMWJlZBJfMHg0ZjZmMzNAYXBpLnBocC92MS52b2QvdHlwZXNkYXRhcz90b2tlbj0IMHgxYggweDI3BmtleQV0Xv1OCGluaXQKeWVhcnMIMHg0NggweDVjBTBXOlMIMHg1YQgweDYxCDB4MzcFe3yLVwgweDUzBjB4ZggweDM1CDB4MTEEYnkFkmOPXggweDM2AnYIMHg1ZgRpZA50eXBlX2lkCDB4MTISdHlwZV9uYW1lDmZpbHRlcnMSXzB4MzQ5NzhkAm4SXzB4NTAzZmI5EF8weDg1MWVjEl8weDhkNTgyYhJfMHg1ZDA4ZTEEe30SXzB4MTIwMTJkEl8weDE4MTExNhJfMHgzZDE5MzQSXzB4MzU5NWMzEl8weDE5OGNkZBJfMHgyNWYxNmMSXzB4MWVjNTNhEl8weDViYWJhNBJfMHgxNjFkMjYSXzB4MmU5ODFlKGFwaS5waHAvdjEudm9kP3R5cGU9CDB4NTcGZXh0CHBhZ2UIMHg1NQgweDI0CDB4MzMIMHgyZQYweGUKdG90YWwIMHg0ZhJwYWdlY291bnQSXzB4MWY0ZWI0El8weDMxNjA5NBJfMHgxMmIyYjcSXzB4M2I2MTA3El8weGM0NGUyNBJfMHgzOTU3OTkSXzB4NDlmMjA1El8weDE0ZDFlYhJfMHgxMmUxMzEIMHg2MAgweDIzEHZvZF95ZWFyCDB4MmIIMHgzOQgweDE4FnZvZF9jb250ZW50BjB4YggweDFjCDB4NTIadm9kX3BsYXlfZnJvbQgweDNiGHZvZF9wbGF5X3VybAYweGQSXzB4NWFkNDNhEl8weDQxNzU4ZRBwYXJzZUludBJfMHgxNTU5NDUSXzB4NDVkZTMxEl8weDM1ODk2OBJfMHg0NTE1YTMSXzB4M2YwMjg5El8weDNkMDU2YxJfMHgxNjM5YjcSXzB4NDBhYzFmEl8weDNkYjNjMRJfMHhmMGE3OTISXzB4NThjMWZkCDB4MWUIMHg0MwgweDE2CDB4MjUIMHg1MQxoZWFkZXISXzB4NGZlMDQwEl8weDU0MjNmMRJfMHg1YmY4NmYSXzB4MWQzODE3El8weDM2ZmIyMRJfMHg1NWQ0OTgSXzB4NTcxZGI3El8weDQ2MTMwNhJfMHg1NzQ4ZjMIMHg0YxombGltaXQ9MTAmd2Q9El8weDU0MjhmZgIgCGhvbWUOaG9tZVZvZBBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gPpAMBpgMBACKoAwAEAKoDAAGsAwACrgMAA7ADAA4ABgGgAQAAACAjEYUJAKoDAAysAwEMrgMCDLADAwyyAwANtAMBDbYDAgm4AwMJugMECbwDBQm+AwYJwAMHCcIDCA3EAwkNxgMKDcgDCw3KAwwNzAMNDc4DDg3QAw8N0gMQAdQDEQHWAxIB2AMTAdoDFAHcAxUB3gMWAeADFwHiAxgB5AMZDeYDGgHoAxsB6gMcAewDHQGoAx4BCOhDvgRfFQC+BV8WAL4GXxcAvgdfGAC+CF8ZAL4JXxoAvgpfGwC+C18cAL4MXx4Avg1fHwC+Dl8gAL4PXyEAvhBfIgApBPcAAAAE+AAAAAT5AAAABPoAAAAE+wAAAAT8AAAABP0AAAAE/gAAAAT/AAAABAABAAAEAQEAAAR6AAAABAIBAAAEAwEAAAQEAQAABAUBAAAEBgEAAAQHAQAABAgBAAAECQEAAAQKAQAABAsBAAAEDAEAAAQNAQAABA4BAAAEDwEAAARAAAAABBABAAAEEQEAAAQSAQAABBMBAAAEFAEAACYgAAQVAQAATCAAAIAEFgEAAEwhAACABBcBAABMIgAAgAQYAQAATCMAAIAEGQEAAEwkAACABBoBAABMJQAAgAQbAQAATCYAAIAEHAEAAEwnAACABFsAAABMKAAAgAQdAQAATCkAAIAEHgEAAEwqAACABDcAAABMKwAAgAQfAQAATCwAAIAENgAAAEwtAACABCABAABMLgAAgAQhAQAATC8AAIAEIgEAAEwwAACABCMBAABMMQAAgAQkAQAATDIAAIAEJQEAAEwzAACABCYBAABMNAAAgAQnAQAATDUAAIAEKAEAAEw2AACABCkBAABMNwAAgAQqAQAATDgAAIAEKwEAAEw5AACABDkAAABMOgAAgAQsAQAATDsAAIAELQEAAEw8AACABC4BAABMPQAAgAQvAQAATD4AAIAEMAEAAEw/AACABDEBAABMQAAAgAQyAQAATEEAAIAEMwEAAExCAACABDQBAABMQwAAgAQ1AQAATEQAAIAENgEAAExFAACABDcBAABMRgAAgAQ4AQAATEcAAIAEOQEAAExIAACABDoBAABMSQAAgAQ7AQAATEoAAIAEPAEAAExLAACABD0BAABMTAAAgAQwAAAATE0AAIAEPgEAAExOAACABD8BAABMTwAAgARAAQAATFAAAIAEQQEAAExRAACABB4AAABMUgAAgARCAQAATFMAAIAEQwEAAExUAACABEQBAABMVQAAgARFAQAATFYAAIAERgEAAExXAACABEcBAABMWAAAgARIAQAATFkAAIAESQEAAExaAACABEoBAABMWwAAgARLAQAATFwAAIAETAEAAExdAACABE0BAABMXgAAgAROAQAATF8AAIAETwEAAExgAACABFABAABMYQAAgF8EAL4AZQQAvEEB7g6+AU3aAAAAXwUAZQUABDQBAADtXwYAv18HAL9fCAC/XwkAv18KALNfCwBlBQAEUQEAAO1lBQAEUgEAAO0EUwEAAGUFAARUAQAA7WUFAARVAQAA7QRWAQAAJgYAXwwAvgJlDAC8gAHuDr4DTeIAAABfDQBlDQAEPwEAAGUFAARXAQAA7e5fDgBlDQAEHAEAAARYAQAA7l8PAGUNAGUFAARZAQAA7QRaAQAA7l8QAGUNAGUFAARbAQAA7WUFAARcAQAA7e5fEQBlDQAENAEAAGUFAARdAQAA7e5fEgBlDQBlBQAEXgEAAO0EWgEAAO5fEwAmAACWXxQAC18dACmkAwEEAQBFAg5DBgEAAgECAgABEwO+BQABQMAFAAEAwgUBADBhAAC+AE1hAQAAx2IAANCP2O0ppAMBAA5DBgEAAQABBAEAHQHEBQABAL4FAAPPjtfoGNsE/QAAAEjbBDIBAABIJAAAJAEADurlKaQDAQAOQwYBAAIBAgIBABEDvgUAAQDABQABAMIFAQAgsgME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
|
135
0130/道长JS/cat/tuxiaobei_open.js
Normal file
135
0130/道长JS/cat/tuxiaobei_open.js
Normal file
@ -0,0 +1,135 @@
|
||||
import { load, _ } from './lib/cat.js';
|
||||
let key = '🐰兔小贝';
|
||||
let HOST = 'https://www.tuxiaobei.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const IOS_UA = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || IOS_UA,
|
||||
},
|
||||
});
|
||||
return res.content
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: '', type_name: '🐰全部' }, { type_id: 2, type_name: '🐰儿歌' }, { type_id: 3, type_name: '🐰故事' }, { type_id: 27, type_name: '🐰公益' }, { type_id: 9, type_name: '🐰十万个为什么' }, { type_id: 28, type_name: '🐰安全教育' }, { type_id: 29, type_name: '🐰动物奇缘' }, { type_id: 7, type_name: '🐰弟子规' }, { type_id: 5, type_name: '🐰古诗' }, { type_id: 6, type_name: '🐰三字经' }, { type_id: 8, type_name: '🐰千字文' }, { type_id: 11, type_name: '🐰数学' }, { type_id: 25, type_name: '🐰英语' }, { type_id: 24, type_name: '🐰折纸' }];
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
})
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = await request(HOST + '/list/mip-data?typeId=9&page=1&callback=');
|
||||
const html = link.match(/\((.*?)\);/)[1];
|
||||
const data = JSON.parse(html).data;
|
||||
let videos = _.map(data.items, (it) => {
|
||||
return {
|
||||
vod_id: it.video_id,
|
||||
vod_name: it.name,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: it.root_category_name + ' | ' + it.duration_string || '',
|
||||
}
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == 'undefined') pg = 1;
|
||||
const link = await request(HOST + '/list/mip-data?typeId=' + tid + '&page=' + pg + '&callback=');
|
||||
const html = link.match(/\((.*?)\);/)[1];
|
||||
const data = JSON.parse(html).data;
|
||||
let videos = _.map(data.items, (it) => {
|
||||
return {
|
||||
vod_id: it.video_id,
|
||||
vod_name: it.name,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: it.root_category_name + ' | ' + it.duration_string || '',
|
||||
}
|
||||
});
|
||||
const pgCount = pg * 30 > data.totalCount ? parseInt(pg) : parseInt(pg) + 1;
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 30,
|
||||
total: data.totalCount,
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: '',
|
||||
};
|
||||
const playlist = ['点击播放' + '$' + HOST + '/play/' + id];
|
||||
vod.vod_play_from = "道长在线";
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
const html = await request(id);
|
||||
const $ = load(html);
|
||||
const pvideo = $("body mip-search-video[video-src*=http]");
|
||||
const purl = pvideo[0].attribs['video-src'];
|
||||
// console.debug('兔小贝 purl =====>' + purl); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: purl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
const link = HOST + "/search/" + wd;
|
||||
const html = await request(link);
|
||||
const $ = load(html);
|
||||
const list = $("div.list-con > div.items");
|
||||
let videos = _.map(list, (it) => {
|
||||
const a = $(it).find("a:first")[0];
|
||||
const img = $(it).find("mip-img:first")[0];
|
||||
const tt = $(it).find("p:first")[0];
|
||||
const remarks = $(it).find("p")[1];
|
||||
return {
|
||||
vod_id: a.attribs.href.replace(/.*?\/play\/(.*)/g, '$1'),
|
||||
vod_name: tt.children[0].data,
|
||||
vod_pic: img.attribs["src"],
|
||||
vod_remarks: remarks.children[0].data || "",
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
land: 1,
|
||||
ratio: 1.78,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
}
|
||||
}
|
118
0130/道长JS/cat/ubestkid_open.js
Normal file
118
0130/道长JS/cat/ubestkid_open.js
Normal file
@ -0,0 +1,118 @@
|
||||
// 无搜索功能
|
||||
import { _ } from './lib/cat.js';
|
||||
let key = '🐯贝乐虎';
|
||||
let HOST = 'https://vd.ubestkid.com';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
const MOBILE_UA = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1';
|
||||
|
||||
async function request(reqUrl, referer, mth, data, hd) {
|
||||
const headers = {
|
||||
"User-Agent": MOBILE_UA,
|
||||
};
|
||||
if (referer) headers.referer = encodeURIComponent(referer);
|
||||
let res = await req(reqUrl, {
|
||||
method: mth || "get",
|
||||
headers: headers,
|
||||
data: data,
|
||||
postType: mth === "post" ? "json" : "",
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype
|
||||
}
|
||||
|
||||
async function home(filter) {
|
||||
const classes = [{ type_id: 65, type_name: '🐯最新上架' }, { type_id: 113, type_name: '🐯人气热播' }, { type_id: 56, type_name: '🐯经典童谣' }, { type_id: 137, type_name: '🐯开心贝乐虎' }, { type_id: 53, type_name: '🐯律动儿歌' }, { type_id: 59, type_name: '🐯经典儿歌' }, { type_id: 101, type_name: '🐯超级汽车1' }, { type_id: 119, type_name: '🐯超级汽车第二季' }, { type_id: 136, type_name: '🐯超级汽车第三季' }, { type_id: 95, type_name: '🐯三字经' }, { type_id: 133, type_name: '🐯幼儿手势舞' }, { type_id: 117, type_name: '🐯哄睡儿歌' }, { type_id: 70, type_name: '🐯英文儿歌' }, { type_id: 116, type_name: '🐯节日与节气' }, { type_id: 97, type_name: '🐯恐龙世界' }, { type_id: 55, type_name: '🐯动画片儿歌' }, { type_id: 57, type_name: '🐯流行歌曲' }, { type_id: 118, type_name: '🐯贝乐虎入园记' }, { type_id: 106, type_name: '🐯贝乐虎大百科' }, { type_id: 62, type_name: '🐯经典古诗' }, { type_id: 63, type_name: '🐯经典故事' }, { type_id: 128, type_name: '🐯萌虎学功夫' }, { type_id: 100, type_name: '🐯绘本故事' }, { type_id: 121, type_name: '🐯开心贝乐虎英文版' }, { type_id: 96, type_name: '🐯嗨贝乐虎情商动画' }, { type_id: 108, type_name: '🐯动物音乐派对' }, { type_id: 126, type_name: '🐯动物音乐派对英文版' }, { type_id: 105, type_name: '🐯奇妙的身体' }, { type_id: 124, type_name: '🐯奇妙的身体英文版' }, { type_id: 64, type_name: '🐯认知卡片' }, { type_id: 109, type_name: '🐯趣味简笔画' }, { type_id: 78, type_name: '🐯数字儿歌' }, { type_id: 120, type_name: '🐯识字体验版' }, { type_id: 127, type_name: '🐯启蒙系列体验版' }];
|
||||
const filterObj = {};
|
||||
return JSON.stringify({
|
||||
class: _.map(classes, (cls) => {
|
||||
cls.land = 1;
|
||||
cls.ratio = 1.78;
|
||||
return cls;
|
||||
}),
|
||||
filters: filterObj,
|
||||
})
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
const link = HOST + "/api/v1/bv/video";
|
||||
const pdata = { age: 1, appver: "6.1.9", egvip_status: 0, svip_status: 0, vps: 60, subcateId: 56, "p": 1 };
|
||||
const jo = JSON.parse(await request(link, "", "post", pdata)).result;
|
||||
const videos = [];
|
||||
_.each(jo.items, (it) => {
|
||||
videos.push({
|
||||
vod_id: it.url,
|
||||
vod_name: it.title,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: '👀' + it.viewcount || '',
|
||||
})
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof pg == 'undefined') pg = 1;
|
||||
const link = HOST + "/api/v1/bv/video";
|
||||
const pdata = { age: 1, appver: "6.1.9", egvip_status: 0, svip_status: 0, vps: 60, subcateId: tid, "p": pg };
|
||||
const jo = JSON.parse(await request(link, "", "post", pdata)).result;
|
||||
const videos = [];
|
||||
_.each(jo.items, (it) => {
|
||||
videos.push({
|
||||
vod_id: it.url,
|
||||
vod_name: it.title,
|
||||
vod_pic: it.image,
|
||||
vod_remarks: '👀' + it.viewcount || '',
|
||||
})
|
||||
});
|
||||
const pgCount = pg * 60 > jo.total ? parseInt(pg) : parseInt(pg) + 1;
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 60,
|
||||
total: jo.total,
|
||||
list: videos,
|
||||
})
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
const vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: '',
|
||||
};
|
||||
const playlist = ['点击播放' + '$' + id];
|
||||
vod.vod_play_from = "道长在线";
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
// console.debug('贝乐虎 id =====>' + id); // js_debug.log
|
||||
return JSON.stringify({
|
||||
parse: 0,
|
||||
url: id,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick) {
|
||||
return '{}'
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
}
|
||||
}
|
155
0130/道长JS/cat/wogg_open.js
Normal file
155
0130/道长JS/cat/wogg_open.js
Normal file
@ -0,0 +1,155 @@
|
||||
import {load, _, Uri} from 'assets://js/lib/cat.js';
|
||||
import {log} from 'assets://js/lib/utils.js';
|
||||
import {initAli, detailContent, playContent} from 'assets://js/lib/ali.js';
|
||||
|
||||
let siteKey = 'wogg';
|
||||
let siteType = 0;
|
||||
let siteUrl = 'https://wogg.xyz';
|
||||
let UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";
|
||||
let patternAli = /(https:\/\/www\.aliyundrive\.com\/s\/[^"]+)/
|
||||
|
||||
async function init(cfg) {
|
||||
try {
|
||||
siteKey = _.isEmpty(cfg.skey) ? '' : cfg.skey;
|
||||
siteType = _.isEmpty(cfg.stype) ? '' : cfg.stype;
|
||||
await initAli(cfg);
|
||||
} catch (e) {
|
||||
await log('init:' + e.message + ' line:' + e.lineNumber);
|
||||
}
|
||||
}
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let header = {
|
||||
'user-agent': agentSp || 'okhttp/3.12.0',
|
||||
};
|
||||
let uri = new Uri(reqUrl);
|
||||
let res = await req(uri.toString(), {
|
||||
headers: header,
|
||||
timeout: 10000
|
||||
});
|
||||
let content = res.content;
|
||||
return content;
|
||||
}
|
||||
|
||||
function getHeader() {
|
||||
let header = {};
|
||||
header['User-Agent'] = UA;
|
||||
return header;
|
||||
}
|
||||
|
||||
async function getString(url) {
|
||||
let res = await req(url, {
|
||||
headers: getHeader()
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
let classes = [{'type_id': 1, 'type_name' : '电影'},{'type_id': 20, 'type_name' : '电视剧'},{'type_id': 28, 'type_name' : '综艺'},{'type_id': 24, 'type_name' : '动漫'},{'type_id': 32, 'type_name' : '音乐'}];
|
||||
let filterObj = {};
|
||||
async function home(filter) {
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
async function homeVod() {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
let reqUrl = siteUrl + '/index.php/vodshow/'+tid+'--------'+pg+'---.html';
|
||||
let con = await request(reqUrl, UA);
|
||||
const $ = load(con);
|
||||
let items = $('.module:eq(0) > .module-list > .module-items > .module-item');
|
||||
let videos = [];
|
||||
for(var item of items) {
|
||||
let oneA = $(item).find('.module-item-cover .module-item-pic a').first();
|
||||
let href = oneA.attr('href');
|
||||
let name = oneA.attr('title');
|
||||
let oneImg = $(item).find('.module-item-cover .module-item-pic img').first();
|
||||
let pic = oneImg.attr('data-src');
|
||||
let remark = $(item).find('.module-item-text').first().text();
|
||||
videos.push({
|
||||
vod_id: href,
|
||||
vod_name: name,
|
||||
vod_pic: pic,
|
||||
vod_remarks: remark,
|
||||
});
|
||||
}
|
||||
|
||||
const hasMore = $('#page > a:contains(下一页)').length > 0;
|
||||
const pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 72,
|
||||
total: 72 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
try {
|
||||
await log('detail:id:---' + id);
|
||||
let preMatches = id.match(patternAli);
|
||||
if (!_.isEmpty(preMatches)) return await detailContent(preMatches[1]);
|
||||
let url = siteUrl + id;
|
||||
let aliUrl = await getString(url);
|
||||
let matches = aliUrl.match(patternAli);
|
||||
console.log('detailmatche---');
|
||||
console.log(matches[1]);
|
||||
if (!_.isEmpty(matches)) return await detailContent(matches[1]);
|
||||
return '';
|
||||
} catch (e) {
|
||||
await log( 'detail:' + e.message + ' line:' + e.lineNumber);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
try {
|
||||
return await playContent(flag, id, flags);
|
||||
} catch (e) {
|
||||
await log( 'play:' + e.message + ' line:' + e.lineNumber);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async function search(wd, quick) {
|
||||
await log('search---' + wd);
|
||||
let searchUrl = siteUrl + '/index.php/vodsearch/-------------.html?wd=' + wd;
|
||||
let html = await getString(searchUrl);
|
||||
let $ = load(html);
|
||||
let items = $('.module-search-item');
|
||||
let videos = [];
|
||||
for(var item of items) {
|
||||
let vodId = $(item).find(".video-serial")[0].attribs.href;
|
||||
let name = $(item).find(".video-serial")[0].attribs.title;
|
||||
let pic = $(item).find(".module-item-pic > img")[0].attribs['data-src'];
|
||||
let remark = '';
|
||||
videos.push({
|
||||
vod_id: vodId,
|
||||
vod_name: name,
|
||||
vod_pic: pic,
|
||||
vod_remarks: remark,
|
||||
});
|
||||
}
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
1
0130/道长JS/cat/xiaoya.js
Normal file
1
0130/道长JS/cat/xiaoya.js
Normal file
@ -0,0 +1 @@
|
||||
import{Crypto,load,_}from"assets://js/lib/cat.js";let key="xiaoya-tv",url="",siteKey="",siteType=0;const UA="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",cookie={};async function request(reqUrl,referer,mth,data,hd){var headers={"User-Agent":UA,Cookie:_.map(cookie,(value,key)=>key+"="+value).join(";")},referer=(referer&&(headers.referer=encodeURIComponent(referer)),await req(reqUrl,{method:mth||"get",headers:headers,data:data,postType:"post"===mth?"form":""}));return referer.content}async function init(cfg){siteKey=cfg.skey,siteType=cfg.stype,url=cfg.ext}async function home(filter){return(await request(url)).replaceAll("1$/$1","1$/$0")}async function homeVod(){return"{}"}async function category(tid,pg,filter,extend){pg<=0&&(pg=1);let api=url+"?t="+tid+"&pg="+pg;return extend&&(tid=Object.entries(extend).map(([key,val]=entry)=>"&"+key+"="+val),api=(api+=tid)+("&f="+encodeURIComponent(JSON.stringify(extend)))),request(api)}async function detail(id){id=id.split("$");return request(url+"?ids="+id[0]+"$"+id[1])}async function play(flag,id,flags){return request(url.replace("/vod1","/play")+"?id="+id+"&from=open")}async function search(wd,quick){return request(url+"?wd="+wd)}function __jsEvalReturn(){return{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search}}export{__jsEvalReturn};
|
1
0130/道长JS/cat/yqktv_open.js
Normal file
1
0130/道长JS/cat/yqktv_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1C/ARp5cWt0dl9vcGVuLmpzGC4vbGliL2NhdC5qcxxfX2pzRXZhbFJldHVybgxDcnlwdG8KZGF5anMMamluamEyBlVyaQJfBmtleQZ1cmwMZGV2aWNlDnNpdGVLZXkQc2l0ZVR5cGUOcmVxdWVzdAhpbml0CGhvbWUOaG9tZVZvZBJuZXh0VmFsdWUMd29ya2VyEGNhdGVnb3J5DGRldGFpbAhwbGF5DHNlYXJjaA5jaGFyU3RyDnJhbmRTdHIQcmFuZFVVSUQOcmFuZE1BQxRyYW5kRGV2aWNlGmZvcm1hdFBsYXlVcmwSanNvblBhcnNlCnlxa3R2emFiYWNkZWZnaGprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkCZQJ0AnICYQJvAm4CaQZyZXEab2todHRwLzMuMTQuORR1c2VyLWFnZW50DmNvbnRlbnQkd3d3LmZ1d2VudHV0ZW5nLmNuEmJ1bmRsZXJJZA5yZWdDb2RlCGltc2kYMTAwMV9kZWZhdWx0DjEuMC4wLjEOdmVyc2lvbgptb2RlbBRkZXZpY2VJbmZvBm1hYxZ2ZXJzaW9uQ29kZQ5yZWxlYXNlDG9zSW5mbxZpc0xvd0RldmljZRJyZXF1ZXN0SWRAZDZkNTIwZWE5MDkwNGYxYmE2ODBlZDZjOWM5ZjkwMDcKYXBwSWQIaW1laQh1ZGlkDGFzc2lnbghrZXlzDHNvcnRCeQhwdXNoAj1OYXBwS2V5PTcwYWY2N2QyYjZjZjQ3Njc5YjM5N2VhNGMxODg2ODc3Bk1ENQImFnRvTG93ZXJDYXNlCHNpZ24OaGVhZGVycwhwb3N0DG1ldGhvZAhkYXRhCHNrZXkKc3R5cGUKbG9jYWwKcGFyc2UOaXNFbXB0eQRpZBJzdHJpbmdpZnlEaHR0cHM6Ly9jb24ubGJwY3J3LmNvbS9jb25maWcuanNvbjwvdjEvYXBpL3NlYXJjaC9nZXRTZWFyY2hGaWx0ZXIUZmlsdGVyTGlzdB5maWx0ZXJWYWx1ZUxpc3QOdHlwZV9pZBJ0eXBlX25hbWUQcGFyc2VJbnQEe30wL3YxL2FwaS92b2RXb3JrZXIvZGV0YWlsFnZvZFdvcmtlcklkDnZvZExpc3QMcmVtYXJrCHRyaW0Kc2NvcmUGMC4wCnZvZElkDHZvZF9pZA52b2ROYW1lEHZvZF9uYW1lEGNvdmVySW1nDnZvZF9waWMCIBZ2b2RfcmVtYXJrcwhwYWdlEnBhZ2Vjb3VudAhsaXN0AnMCZAJjAmwCdRRzdGFydHNXaXRoDnZfd29ya18Mc3Vic3RyEmNoYW5uZWxJZBRmaWx0ZXJOYW1lDGFyZWFJZAUwVzpTCHllYXIFdF79TiRjaGFubmVsQ2hpbGRUeXBlSWQFe3yLVwVoUeiQAnYQc29ydExpc3QQc29ydFR5cGUFkmOPXhBzb3J0TmFtZRJmaWxlck5hbWUUZmlsZXJWYWx1ZRxxdWVyeVZhbHVlSnNvbg5uZXh0VmFsLi92MS9hcGkvc2VhcmNoL3F1ZXJ5Tm93Dmhhc05leHQKaXRlbXMMZmlsdGVyLC92MS9hcGkvdm9kSW5mby9kZXRhaWwWY2hhbm5lbE5hbWUQdm9kX3llYXIQYXJlYU5hbWUQdm9kX2FyZWEKaW50cm8Wdm9kX2NvbnRlbnQSYWN0b3JMaXN0Bm1hcAQsIBJ2b2RfYWN0b3IYZGlyZWN0b3JMaXN0GHZvZF9kaXJlY3RvchRwbGF5ZXJMaXN0FHBsYXllck5hbWUMZXBMaXN0DGVwTmFtZQIkCGVwSWQCIwYkJCQadm9kX3BsYXlfZnJvbRh2b2RfcGxheV91cmwadm9kV29ya2VyTmFtZQxbYT1jcjoEL10IWy9hXTYvdjEvYXBpL3ZvZEluZm8vZ2V0RXBEZXRhaWwecmVzb2x1dGlvbkl0ZW1zInZvZFJlc29sdXRpb25OYW1lNC92MS9hcGkvdm9kSW5mby9nZXRQbGF5VXJsGnZvZFJlc29sdXRpb24Oa2V5d29yZAZzY18qL3YxL2FwaS9zZWFyY2gvc2VhcmNoDHJhbmRvbQItFnRvVXBwZXJDYXNlAjoMSHVhd2VpCmJyYW5kHEhVQVdFSStNYXRlKzIwDmJ1aWxkSWQUcmVwbGFjZUFsbA5yZXBsYWNlBC8vDGh0dHBzOghodHRwFFVzZXItQWdlbnQOcmVmZXJlcg5SZWZlcmVyDGhlYWRlcg+kAwGmAwEAG6gDAAUAqgMAAawDAAKuAwADsAMABLIDAA4ABgGgAQAAAAEcEHkAqgMADKwDAQyuAwIMsAMDDLIDBAy0AwAJtgMBCbgDAgm6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
|
1
0130/道长JS/cat/yqktv_open2.js
Normal file
1
0130/道长JS/cat/yqktv_open2.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1C/ARp5cWt0dl9vcGVuLmpzLGFzc2V0czovL2pzL2xpYi9jYXQuanMcX19qc0V2YWxSZXR1cm4MQ3J5cHRvCmRheWpzDGppbmphMgZVcmkCXwZrZXkGdXJsDGRldmljZQ5zaXRlS2V5EHNpdGVUeXBlDnJlcXVlc3QIaW5pdAhob21lDmhvbWVWb2QSbmV4dFZhbHVlDHdvcmtlchBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gOY2hhclN0cg5yYW5kU3RyEHJhbmRVVUlEDnJhbmRNQUMUcmFuZERldmljZRpmb3JtYXRQbGF5VXJsEmpzb25QYXJzZQp5cWt0dnphYmFjZGVmZ2hqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5AmUCdAJyAmECbwJuAnMGcmVxGm9raHR0cC8zLjE0LjkUdXNlci1hZ2VudA5jb250ZW50JHd3dy5mdXdlbnR1dGVuZy5jbhJidW5kbGVySWQOcmVnQ29kZQhpbXNpGDEwMDFfZGVmYXVsdA4xLjAuMC4xDnZlcnNpb24KbW9kZWwUZGV2aWNlSW5mbwZtYWMWdmVyc2lvbkNvZGUOcmVsZWFzZQxvc0luZm8WaXNMb3dEZXZpY2UScmVxdWVzdElkQGQ2ZDUyMGVhOTA5MDRmMWJhNjgwZWQ2YzljOWY5MDA3CmFwcElkCGltZWkIdWRpZAxhc3NpZ24Ia2V5cwxzb3J0QnkIcHVzaAI9TmFwcEtleT03MGFmNjdkMmI2Y2Y0NzY3OWIzOTdlYTRjMTg4Njg3NwZNRDUCJhZ0b0xvd2VyQ2FzZQhzaWduDmhlYWRlcnMIcG9zdAxtZXRob2QIZGF0YQhza2V5CnN0eXBlCmxvY2FsCnBhcnNlDmlzRW1wdHkEaWQSc3RyaW5naWZ5RGh0dHBzOi8vY29uLmxicGNydy5jb20vY29uZmlnLmpzb248L3YxL2FwaS9zZWFyY2gvZ2V0U2VhcmNoRmlsdGVyFGZpbHRlckxpc3QeZmlsdGVyVmFsdWVMaXN0DnR5cGVfaWQSdHlwZV9uYW1lEHBhcnNlSW50BHt9MC92MS9hcGkvdm9kV29ya2VyL2RldGFpbBZ2b2RXb3JrZXJJZA52b2RMaXN0DHJlbWFyawh0cmltCnNjb3JlBjAuMAp2b2RJZAx2b2RfaWQOdm9kTmFtZRB2b2RfbmFtZRBjb3ZlckltZw52b2RfcGljAiAWdm9kX3JlbWFya3MIcGFnZRJwYWdlY291bnQIbGlzdAJpAmQCYwJsAnUUc3RhcnRzV2l0aA52X3dvcmtfDHN1YnN0chJjaGFubmVsSWQUZmlsdGVyTmFtZQxhcmVhSWQFMFc6Uwh5ZWFyBXRe/U4kY2hhbm5lbENoaWxkVHlwZUlkBXt8i1cFaFHokAJ2EHNvcnRMaXN0EHNvcnRUeXBlBZJjj14Qc29ydE5hbWUSZmlsZXJOYW1lFGZpbGVyVmFsdWUccXVlcnlWYWx1ZUpzb24ObmV4dFZhbC4vdjEvYXBpL3NlYXJjaC9xdWVyeU5vdw5oYXNOZXh0Cml0ZW1zDGZpbHRlciwvdjEvYXBpL3ZvZEluZm8vZGV0YWlsFmNoYW5uZWxOYW1lEHZvZF95ZWFyEGFyZWFOYW1lEHZvZF9hcmVhCmludHJvFnZvZF9jb250ZW50EmFjdG9yTGlzdAZtYXAELCASdm9kX2FjdG9yGGRpcmVjdG9yTGlzdBh2b2RfZGlyZWN0b3IUcGxheWVyTGlzdBRwbGF5ZXJOYW1lDGVwTGlzdAxlcE5hbWUCJAhlcElkAiMGJCQkGnZvZF9wbGF5X2Zyb20Ydm9kX3BsYXlfdXJsGnZvZFdvcmtlck5hbWUMW2E9Y3I6BC9dCFsvYV02L3YxL2FwaS92b2RJbmZvL2dldEVwRGV0YWlsHnJlc29sdXRpb25JdGVtcyJ2b2RSZXNvbHV0aW9uTmFtZTQvdjEvYXBpL3ZvZEluZm8vZ2V0UGxheVVybBp2b2RSZXNvbHV0aW9uDmtleXdvcmQGc2NfKi92MS9hcGkvc2VhcmNoL3NlYXJjaAxyYW5kb20CLRZ0b1VwcGVyQ2FzZQI6DEh1YXdlaQpicmFuZBxIVUFXRUkrTWF0ZSsyMA5idWlsZElkFHJlcGxhY2VBbGwOcmVwbGFjZQQvLwxodHRwczoIaHR0cBRVc2VyLUFnZW50DnJlZmVyZXIOUmVmZXJlcgxoZWFkZXIPpAMBpgMBABuoAwAFAKoDAAGsAwACrgMAA7ADAASyAwAOAAYBoAEAAAABHBB5AKoDAAysAwEMrgMCDLADAwyyAwQMtAMACbYDAQm4AwIJugMDCbwDBAm+AwUBwAMGAcIDBwHEAwgBxgMJDcgDCgHKAwsBzAMMAc4DDQHQAw4B0gMPDdQDEAHWAxEB2AMSAdoDEwHcAxQB3gMVAagDFgEI6FK+AF8KAL4BXwsAvgJfDAC+A18NAL4EXw8AvgVfEAC+Bl8RAL4HXxIAvghfEwC+CV8VAL4KXxYAvgtfFwC+DF8YAL4NXxkAvg5fGgC+D18bACkE8AAAAF8FAL9fBgALXwcAv18IALNfCQALXw4ABPEAAABfFAAppAMBBAEAVAIOYgYBvgMDBQMIBAOXAwjkAwABAOYDAAEA6AMAAQDqAwAAAOwDAQAg7gMBAiDkAwMFIPADAQMguAMHCNYDFgCyAwQMqgMADGEEAGECAGEBANDoGjj5AAAAzwsE+gAAAEz7AAAA7otB/AAAAC4LBP0AAABM/gAAAL0ATP8AAABlAABBAAEAAEwAAQAABAEBAABMbAAAAAQCAQAATAMBAABlAABBBAEAAEwFAQAAZQAAQQYBAABMBgEAAL0BTAcBAABlAABBCAEAAEwJAQAABAIAAABMCgEAANzsTAsBAAAEDAEAAEwNAQAAZQAAQQ4BAABMDgEAAGUAAEEPAQAATA8BAADH0RHoEA5lAgBCEAEAAMPRJAIAyw5lAgBCEQEAAMMkAQDIZQIAQhIBAABiAQC+AiQCABFjAQAOJgAAyWEDAGIBAH3qHcpiAgBCEwEAAGIDAAQUAQAAncNiAwBHnSQBAA6AAOjhDoNiAgBCEwEAAAQVAQAAJAEADmUDAEIWAQAAYgIAQlsAAAAEFwEAACQBACQBAEI3AAAAJAAAQhgBAAAkAADBBMNiBABDGQEAADj5AAAAzwsLBPoAAABM+wAAAEwaAQAABBsBAABMHAEAAMNMHQEAAO6LQfwAAAAupAMBAAcCMQcIMTAwMQ5DBgEAAQABAQAAAgHkAwABAM8opAMBAA5iBgHAAwEEAQcLAJkCBeQDAAEA5gMAAADoAwABAOQDBAQD6gMBADC6AwgIvAMJCLQDBQi4AwcIsgMEDNoDGADUAxUA1gMWANgDFwC+AwoAtgMGCGEDAM9BHgEAABFmAAAOz0EfAQAAEWYBAA4E3AAAAMc4IAEAAEJBAAAAZQIAwyQCAIvM57Ol6CZsGgAAADiYAAAAQiEBAADEJAEAEWYDAA4O6gvJbAcAAAAO6gIvZQQAQiIBAABlAwAkAQARaYYAAAAOXgUA7BFmAwAOZQMAXgYAuyDtQhgBAAAkAABDIwEAAGUDAF4HAOxDAAEAAGUDAF4GALsPtJazlu9DDgEAAGUDAF4IAOxDBgEAAGUDAF4GALsQ7UIYAQAAJAAAQw8BAAA4IAEAAEJCAAAAZQIAwziYAAAAQiQBAABlAwAkAQAkAwCLDl4JAAQlAQAAs5bui8o4mAAAAEIhAQAAYgMAJAEAs0cRZgoADgYupAMBAA5iBgHCAwEDAQcDAZgBBOQDAAEA5gMBACDoAwEBIOQDAgIwvgMKALYDBgiyAwQMYQEAYQAAOJgAAABCIQEAANtlAQAEJgEAAJ3tiyQBAEEdAQAAxyYAAMhhAgBiAABBJwEAALNHQSgBAAB96inJYgEAQhMBAAALYgIAQSMBAABMKQEAAGICAEE2AAAATCoBAAAkAQAOgADo1Q6DZQIAQhIBAABiAQC+ACQCABFjAQAOOJgAAABCJAEAAAtiAQBMHgAAACQBAC6kAwEADkIGAQABAAECAAAOAeQDAAEAOCsBAADPQSkBAAAjAQCkAwEADmIGAcQDAAAAAQAABgAELAEAAC6kAwEADmIGAcgDAQQBCQIA4gIF5AMAAQDmAwEAIOgDAQEg5AMDAjDmAwQDIL4DCgC2AwYIYQEAYQAAOJgAAABCIQEAANtlAQAELQEAAJ20lgvPTC4BAADviyQBAEEdAQAAx2IAAJboBwQsAQAALiYAAMhhAgBiAABBLwEAAH3r6wDJYQMAJgAAymICAEEwAQAAEeg0DmICAEEwAQAAQjEBAAAkAADns6UR6B0OYgMAQhMBAABiAgBBMAEAAEIxAQAAJAAAJAEADmICAEEyAQAAEehODmICAEEyAQAAQjEBAAAkAADns6UR6DcOBDMBAABiAgBBMgEAAEIxAQAAJAAAqhHoHQ5iAwBCEwEAAGICAEEyAQAAQjEBAAAkAAAkAQAOYgEAQhMBAAALYgIAQTQBAABMNQEAAGICAEE2AQAATDcBAABiAgBBOAEAAEw5AQAAYgMAQlsAAAAEOgEAACQBAEw7AQAAJAEADoAAaRT///8OgziYAAAAQiQBAAALtEw8AQAAtEw9AQAAYgEATD4BAAAkAQAupAMBAA5iBgHKAwQZBAkEAeAKHeQDAAEA5gMAAQDoAwABAOoDAAEA7AMBACDuAwEBIPADAQIg5gMEGSDkAwYEMOYDBwUg6AMHBiDqAwcHIOwDBwgg7gMHCSDkAwoKMOYDCwsw5AMNBCDoAw0NIOQDDg4w5gMPDzD+BAEDMIAFAREw5AMRGTDmAxITMIIFARIghAUBFSDkAxQZMOYDFRcghgUBFjDIAw8AvgMKALYDBgjGAw4MYRgAYRUAYRQAYREAYRAAYQIAYQEAYQAAz0JEAQAABEUBAAAkAQDoD9vPQkYBAAC6JAEA7Ysu0BHpAw60x7NiAACpEegHDrQRYwAADmIAAMgmAADJtGIAAKkR6AQO0pYR6RMOsziPAAAAQhEBAADSJAEA56lpMwIAAGEDADiYAAAAQiEBAADcZQIABCYBAACdtJYLz0xHAQAA74skAQBBHQEAAMpiAwBpSgEAAGIDAEEnAQAAaT0BAABhBABiAwBBJwEAAH3rIwHBBGEJAGEIAGEHAGEGAGEFAGIEAEFIAQAAwQW/wQZiBQARBEkBAACr6A0ESgEAABFjBgAO6ikRBEsBAACr6A0ETAEAABFjBgAO6hQRBE0BAACr6AsETgEAABFjBgAODrNiBgDnqWq7AAAAC8EHYgcAYgUAQ9oAAABiBwBiBgBDNgAAACYAAMEIYggAQhMBAAALBE8BAABM9wAAAL9MUAEAACQBAA5iBABBKAEAAMEJYQoAYgkAfeo4wQphCwALwQtiCwBiCgBBNgAAAEP3AAAAYgsAYgoAQSMBAABDUAEAAGIIAEITAQAAYgsAJAEADoAA6MYOg2IHAGIIALNHQVABAABD4AAAAGIHAGIIAENAAAAAYgIAQhMBAABiBwAkAQAOgABp3P7//w6DYgMAabIAAABiAwBBUQEAAGmlAAAAYQ0AYQwACwRSAQAATNoAAAAEUwEAAEw2AAAAwQwmAADBDWEOAGIDAEFRAQAAfepAwQ5hDwALwQ9iDwBiDgBBVAEAAEP3AAAAYg8AYg4AQVIBAABCNwAAACQAAENQAQAAYg0AQhMBAABiDwAkAQAOgADovg6DYgwAYg0As0dBUAEAAEPgAAAAYgwAYg0AQ0AAAABiAgBCEwEAAGIMACQBAA4LwRDSEegpDtJBUgEAABHoHw5iEADSQVIBAABCNwAAACQAAENSAQAA0gRSAQAAmA5iEABBUgEAABHpDQ5iEAC9ABVDUgEAAA4LBEcBAABMVQEAAM9MVgEAACYBAMER0uhdYRIAOI8AAABCEQEAANIkAQDBEmETAGISAH3qO8ETBFIBAABiEwCqEegsDrPSYhMAR+eqEeggDmIRAEITAQAAC2ITAExVAQAA0mITAEdMVgEAACQBAA6AAOjDDoNiEAA4mAAAAEIkAQAAYhEAJAEAQ1cBAAC0YgAAqRHoEA5lAwDPRxHoBw5lAwDPmA5iAAC0pRHoGQ5lAwDPRxHoEA5iEABlAwDPRxVDWAEAAA44mAAAAEIhAQAA3GUCAARZAQAAnbSWYhAA74skAQBBHQEAAMEUYhQAlugHBCwBAAAuYhQAQVoBAAAR6CMOYhQAQVgBAAAR6BcOZQMAz3FiFABBWAEAAEliAQCRYwEADiYAAMEVYRYAYhQAQVsBAAB96+0AwRZhFwAmAADBF2IWAEEwAQAAEeg0DmIWAEEwAQAAQjEBAAAkAADns6UR6B0OYhcAQhMBAABiFgBBMAEAAEIxAQAAJAAAJAEADmIWAEEyAQAAEehODmIWAEEyAQAAQjEBAAAkAADns6UR6DcOBDMBAABiFgBBMgEAAEIxAQAAJAAAqhHoHQ5iFwBCEwEAAGIWAEEyAQAAQjEBAAAkAAAkAQAOYhUAQhMBAAALYhYAQTQBAABMNQEAAGIWAEE2AQAATDcBAABiFgBBOAEAAEw5AQAAYhcAQlsAAAAEOgEAACQBAEw7AQAAJAEADoAAaRL///8OgwtiAABMPAEAAGIBAEw9AQAAYhUATD4BAADBGGICAOezpRHoDg5iGABiAgAVQ1wBAAAOOJgAAABCJAEAAGIYACQBAC6kAwEABwIxDmIGAcwDAQcBCwQC9AMI5AMAAQDmAwEAIOgDAQEg6gMBAiDkAwIDMOYDAwQg7AMDBSDmAwQGML4DCgC2AwYIsgMEDNwDGQBhAgBhAQBhAAA4mAAAAEIhAQAA22UBAARdAQAAnbSWC89MNAEAAO+LJAEAQR0BAADHC89MNQEAAGIAAEE2AQAATDcBAABiAABBOAEAAEw5AQAAYgAAQV4BAABMKgEAAGIAAEFLAQAAQjcAAAAkAABMXwEAAGIAAEFgAQAATGEBAAC/TDsBAABiAABBYgEAAEIxAQAAJAAATGMBAADIYgAAQWQBAAAR6C0OYgEAZQIAQmUBAABiAABBZAEAAL4AJAIAQlsAAAAEZgEAACQBABVDZwEAAA5iAABBaAEAABHoLQ5iAQBlAgBCZQEAAGIAAEFoAQAAvgEkAgBCWwAAAARmAQAAJAEAFUNpAQAADgvJYQMAYgAAQWoBAAB96nLKYQUAYQQAYgMAQWsBAADBBCYAAMEFYQYAYgMAQWwBAAB96jDBBmIFAEITAQAA3mIBAEE3AQAAYgYAQW0BAADuBG4BAACdYgYAQW8BAACdJAEADoAA6M4Og2ICAGIEAHFiBQBCWwAAAARwAQAAJAEASYAA6IwOg2IBAGUCAEIRAQAAYgIAJAEAQlsAAAAEcQEAACQBAENyAQAAYgEAZQIAQmsAAABiAgAkAQBCWwAAAARxAQAAJAEAQ3MBAAA4mAAAAEIkAQAAC2IBACYBAEw+AQAAJAEALqQDAQAOQgYBAAEBAQYAAE4C5AMAAQDmAwEAMGEAAAsERQEAAM9BLgEAAJ1MIwEAAM9BdAEAAEw2AAAAxwR1AQAAQlwAAAA4mAAAAEIkAQAAYgAAJAEABHYBAADPQXQBAAAEdwEAACUEAKQDAQAOQgYBAAEBAQYAAE4C5AMAAQDmAwEAMGEAAAsERQEAAM9BLgEAAJ1MIwEAAM9BdAEAAEw2AAAAxwR1AQAAQlwAAAA4mAAAAEIkAQAAYgAAJAEABHYBAADPQXQBAAAEdwEAACUEAKQDAQAOYgYBzgMDBQMLAwGUAgjkAwABAOYDAAEA6AMAAQDkAwIAIOgDAgEg6gMDAjDkAwQDIOQDBQADvgMKALYDBgiyAwQMbO8AAABhAQBhAAA4mAAAAEIhAQAA22UBAAR4AQAAnbSWC9BMbwEAAO+LJAEAQR0BAADHJgAAyGIAAEF5AQAAEeggDmIAAGUCAEISAQAAYgAAQXkBAAC+ACQCABVDeQEAAA5hAgBiAABBeQEAAH3qXclhAwBiAQBCEwEAAGICAEF6AQAAJAEADjiYAAAAQiEBAADbZQEABHsBAACdtJYL0ExvAQAAYgIAQXwBAABMfAEAAO+LJAEAymIBAEITAQAAYgMAQR0BAAAkAQAOgADooQ6DOJgAAABCJAEAAAuzTCEBAABiAQBM2wAAACQBAA8uwQRsIAAAADiYAAAAQiQBAAALs0whAQAA0EzbAAAAJAEADy4vpAMBAA5CBgEAAQABAgAACQHkAwABALPPQXwBAACeKKQDAQAOYgYB0AMDBwMJAwC4BArkAwABAOYDAAEA6AMAAQDqAwEAIOwDAQEg7gMBAjDwAwEDIP4EAQQg5AMDBTDmAwQGIMYDDgy+AwoAtgMGCGEEAGEDAGECAGEBAGEAANER6QMOtMezYgAAqRHoBw60EWMAAA5iAADIC89MfQEAAMm0YgAAqRHoKg5lAAAEfgEAAEJcAAAAzyQBAEcR6BQOZQAABH4BAABCXAAAAM8kAQCYDmIAALSlEegzDmUAAAR+AQAAQlwAAADPJAEARxHoHQ5iAgBlAAAEfgEAAEJcAAAAzyQBAEcVQ1gBAAAOOJgAAABCIQEAANxlAgAEfwEAAJ20lmICAO+LJAEAQR0BAADKYgMAlugHBCwBAAAuYgMAQVoBAAAR6DAOYgMAQVgBAAAR6CQOZQAABH4BAABCXAAAAM8kAQBxYgMAQVgBAABJYgEAkWMBAA4mAADBBGEFAGIDAEFbAQAAfevtAMEFYQYAJgAAwQZiBQBBMAEAABHoNA5iBQBBMAEAAEIxAQAAJAAA57OlEegdDmIGAEITAQAAYgUAQTABAABCMQEAACQAACQBAA5iBQBBMgEAABHoTg5iBQBBMgEAAEIxAQAAJAAA57OlEeg3DgQzAQAAYgUAQTIBAABCMQEAACQAAKoR6B0OYgYAQhMBAABiBQBBMgEAAEIxAQAAJAAAJAEADmIEAEITAQAAC2IFAEE0AQAATDUBAABiBQBBNgEAAEw3AQAAYgUAQTgBAABMOQEAAGIGAEJbAAAABDoBAAAkAQBMOwEAACQBAA6AAGkS////DoM4mAAAAEIkAQAAC2IAAEw8AQAAYgEATD0BAABiBABMPgEAACQBAC6kAwEADkMGAdQDAwQDBQIAZgfkAwABAOYDAAEA6AMAAQDqAwAAAOwDAQAg7gMAAQDkAwMCILIDBAzSAxQMYQEAv8cG0KsR6QMO0MizycXPo+hQYQMA0egbZQAAQoABAABlAQDnuwqeZQEA57SeJAIA6iFlAABCgAEAALNiAQDoCWUBAOe0nuoIZQEA57sLniQCAMrDZQEAYgMAR53HkwLqrcMopAMBAA5DBgHWAwAAAAMBAFYA1AMVANu7CO1CGAEAACQAAASBAQAAndu37UIYAQAAJAAAnQSBAQAAndu37UIYAQAAJAAAnQSBAQAAndu37UIYAQAAJAAAnQSBAQAAndu7DO1CGAEAACQAAJ0opAMBAA5DBgHYAwAAAAMBAGYA1AMVANu17UKCAQAAJAAABIMBAACd27XtQoIBAAAkAACdBIMBAACd27XtQoIBAAAkAACdBIMBAACd27XtQoIBAAAkAACdBIMBAACd27XtQoIBAAAkAACdBIMBAACd27XtQoIBAAAkAACdKKQDAQAOQwYB2gMAAAAGAgFNANQDFQCyAwQMCwSEAQAATIUBAAAEhgEAAEwEAQAAvQBMCAEAANu2tJbuQoIBAAAkAABlAQBCgAEAALsLu2MkAgCd27S0lu5CggEAACQAAJ1MhwEAACikAwEABwQxMA5DBgHcAwIAAgQABDsC5AMAAQDmAwABANBCMQEAACQAAEKIAQAAz78kAgBCiQEAAL0AvQEzvyQCAEKJAQAAvQK9AzMEOgEAACQCAEIxAQAAJQAApAMBAAcPPAB8AD4AfAAKMHwACzAHggEBAQA6AAAACAYAAAAEB/X///8LAAkiAAAACRUAAAAJCAAAAAE8AAcDAAAAAT4ABwMAAAABCjAHAwAAAAELMAwACgcIXCR8IwdOAQEAIAAAAAgGAAAABAf1////CwAJCAAAAAEkAAcDAAAAASMADAAKDkMGAd4DAgUCBQAA2wEH5AMAAQDmAwABAOQDAgAg6AMCASDqAwICIOwDAgMg5AMEAANszQAAAGEDAGECAGEBAGEAANBB2wAAABGw6AMOv8diAABCRAEAAASKAQAAJAEAEegPDgSLAQAAYgAAnRFjAAAOYgAAQkQBAAAEjAEAACQBAJboBAsPKNBBGgEAABHpAw4LyNAE+wAAAEcR6QMOv0IxAQAAJAAAyWICAOezpRHoEA5iAQAEjQEAAHFiAgAWSQ7QQY4BAAAR6QMOv0IxAQAAJAAAymIDAOezpRHoDg5iAQBiAwAVQ48BAAAOC2IBAEyQAQAAYgAATNsAAAAPKMEEbAcAAAAO6gIvCyikAwEADkMGAagDAAAAAgcAMgDAAwsAwgMMAMQDDQDKAxAAzAMRAM4DEgDQAxMAC9tM4AAAANxM4QAAAN1M4gAAAN5M5QAAAF4EAEzmAAAAXgUATOcAAABeBgBM6AAAACikAwEA
|
1
0130/道长JS/cat/yrzj_open.js
Normal file
1
0130/道长JS/cat/yrzj_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1DCBBh5cnpqX29wZW4uanMsYXNzZXRzOi8vanMvbGliL2NhdC5qcxxfX2pzRXZhbFJldHVybgxDcnlwdG8KZGF5anMMamluamEyBlVyaQJfDl8weDQ5M2IOXzB4MTkxMRJfMHg0ODRiYTkSXzB4MmQ2YzY2El8weDQ3ZmY4NxJfMHgyNmNiODESXzB4OTdmODdkEl8weDVkMGI1ZhJfMHgzMTAyNmUSXzB4ZDc4YWEyEl8weDFkODg3MhJfMHgxMTRlODgSXzB4NWMzMjI5El8weDJlYWM0NBJfMHgxM2JiZDMSXzB4NGVmMDQzEl8weDNkM2FkNBJfMHg0YjlkNjESXzB4NDk0NTMwEl8weDE2ZGM0MBJfMHg1NmJhMzkSXzB4NWU5NmVhEl8weDI1OGUzZRJfMHhmOGFlMjASXzB4MjMzODQyEl8weDJmMTY0NhJfMHg0Yzk0MGMSXzB4MjZhYmVkEl8weDE5YWExNBJfMHgzYzRiN2YSXzB4NTEyMGRmEl8weDFjNjgyZhJfMHgxZDgwMDYSXzB4MjI0NGUxEl8weDMyZDdmYxJfMHgxZDc5ZjYSXzB4MmM4YzU4El8weDMyZmQxZQYweDQGMHgwSiZwYWdlU2l6ZT0yMSZfX3BsYXRmb3JtPWFuZHJvaWQmc2lnbj0WZ2V0X3BhcnNpbmc4L2FwcHRvdjUvdjEvdXNlci9nZXRVc2VySW5mbw5jb250ZW50OC9hcHB0b3Y1L3YxL3NlYXJjaC9saXN0cz93ZD0Wdm9kX2NvbnRlbnQIbGFuZxBwbGF5X3VybAp0aXRsZQpsaXN0cw51c2VyX2lkCnR5cGVzHEhVQVdFSSBNYXRlIDQwCm1vZGVsDnJlZmVyZXIGIjoiCHBvc3QYZnJvbUNoYXJDb2RlDGh1YXdlaQx4SVVZWnIUcmVwbGFjZUFsbCB3NHZDdDhLRHdvekNsZz09EHZvZF95ZWFy5AEmYXJlYT17e2V4dC5hcmVhfX0mbGFuZz17e2V4dC5sYW5nfX0meWVhcj17e2V4dC55ZWFyfX0mb3JkZXI9e3tleHQub3JkZXJ8ZGVmYXVsdCgidGltZSIpfX0mdHlwZV9uYW1lPXt7ZXh0LmNsYXNzfX0Ga2V5DmlzRW1wdHk+JnR5cGU9Jl9fcGxhdGZvcm09YW5kcm9pZCZzaWduPRJhcmVhX2xpc3QGdXJsFnBsYXllcl9pbmZvFHN0YXJ0c1dpdGgOZm9yRWFjaAp0b3RhbAp0b2tlbgxyYW5kb20aZ2V0X2hvbWVfY2F0ZTQvYXBwdG92NS92MS92b2QvZ2V0Vm9kP2lkPQhza2V5CHBhZ2UmcmV0dXJuIChmdW5jdGlvbigpIDIvYXBwdG92NS92MS91c2VyL3JlZ2lzdGVyDmluZGV4T2YSdm9kX2FjdG9yDHZvZF9pZApzbGljZRRFTkNSWVBUSU9OEnN1YnN0cmluZwxkb21haW4IVXRmOBJmb3JtLWRhdGEGMHgyCG1vbGQyP19fcGxhdGZvcm09YW5kcm9pZCZzaWduPQhrZXlzEmxhbmdfbGlzdAhlYWNoKmh0dHBzOi8vcG8uY2F0dm9kLnRvcAhOKW5sBjB4MQZtYXAKb3JkZXIGMHgzCHRpbWUOY29uc29sZQ5oZWFkZXJzCGF0b2IMU1FqZXRREnR5cGVfbmFtZYIBQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0Mdm1nRGh0CGUwaEUKcGFyc2UMQmFzZTY0IFozdzFCTUtZS2dOYXc2WT04d3J3eWZIUnVJemNmd3FzaUVNS3FJbkhDcmNLZAhFWFRREHZvZF9uYW1lCGRhdGEIb09FbAx3YXFXb1ZyL2FwcHRvdjUvdjEvY29uZmlnL2dldD9wPWFuZHJvaWQmX19wbGF0Zm9ybT1hbmRyb2lkJnNpZ249FnZvZF9yZW1hcmtzFnRvTG93ZXJDYXNlFnRvVXBwZXJDYXNlDCZwYWdlPQpsYWJlbBh3NzdEdnNPOXdxOVY8L2FwcHRvdjUvdjEvdm9kL2xpc3RzP3R5cGVfaWQ9DiBCdWlsZC8GbG9nCHVybHMIYXJlYZABd3FuRHE4S2dYc09RQ01PdVpjT1B3cW9DdzRERG1jS3F3cUhDZ01PNXdxSXp3NndIY01PTHdvZkRtY09md3A5aHc2YzFLMFk9EHRyeSBuZXh0FGNoYXJDb2RlQXQMY2hhckF0CnNoaWZ0CHNpZ24MY29uZmlnEE5udzlBY09PCGNlaWwGJCQkDnR5cGVfaWQOdGltZW91dBp2b2RfcGxheV9mcm9tDFpGQURUQQhjYXRlBmVuYw5yZWxlYXNlDHZhUk1jRQh5cnpqDlJlZmVyZXISc3RyaW5naWZ5GHZvZF9kaXJlY3RvcghyeUZ1DmVuYWJsZWQOdm9kX3N1Ygh0cmltMHdxODZ3NzNDbU1PcEhjT2V3NkhDdXl3PRRVc2VyLUFnZW50BjB4NQh5ZWFyDnJlcGxhY2UOdm9kX3BpYxJ5ZWFyX2xpc3QOYW5kcm9pZAZwd2QIcHVzaAx5WlNES1UMaHR0cHM6GnZvZF9wbGF5X2xpc3QMd01NUFZ2OHdxRERqaXZDckdaVEJtakRrV1RDZ01Pc3dyVT0OYnVpbGRJZEB7fS5jb25zdHJ1Y3RvcigicmV0dXJuIHRoaXMiKSggKQh3NzFmCEhnTTMKdXNlcjFARGFsdmlrLzIuMS4wIChMaW51eDsgVTsgQW5kcm9pZCAIMHg2ZfgBd3JwSnc0YzF3cWNEVlNVT3dxckNqOE9wSlhnMHc2Z0x3NlJodzczRHA4S1BHa2pEdXNLZXc2bDBjUXdXd3FYQ3RnakNyY085WkdrZXdvckNqOEtDdzdIRGc4T2R3b0xDbE1PR3c0a3F3NnpDdU1LeXdyTWRJOE92dzZaZQgweDQ2QHc0TENsenZDcUZBN0hFSjdTeXRndzY4OWF4SmFDa009CDB4ODh4d29RUlFFOTVmM3A5d3BBSUxzT1VIbFRDcE1LL3c3QWNmWDEzY3lnSUNsVENzc0s2d3BERGljSzVGZz09CDB4NTgIMHgzNghTS1VoCDB4N2EIMHg3MwgweDM5CDB4NGEIMHg4ZggweDQ3CDB4OTAIMHgyZQhRTU9PemFiYWNkZWZnaGprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkSXzB4MzIyNzYxEl8weDQ5M2JkMBJfMHgxOTExMmEQXzB4YmNjZGESXzB4NDRlMmNhEl8weDFkMDhkZRJfMHg0ZTRjZGISXzB4MzZjYmIyCDB4NWMSXzB4MzcyMmQ4El8weDFjNjIyYxJfMHgyMjlhMmMSXzB4MTYwNDBlEl8weDE0ZGQ4MAgweDRiCDB4NjgIMHg4NwgweDQxEl8weGI2YTcyYhJfMHg1YmNlMTYSXzB4MWE4OTNkEl8weDFmNTdlOAQpOwx3aW5kb3cIMHg0MAgweDNkEl8weDE2ZDkxORJfMHgyMWNlOWYSXzB4NTJiMWQzEl8weGRkOGRlYxJfMHgzNDQwMGMSXzB4NGQ5OGFjEl8weDJiNzllYQgweDdjCDB4NWIIMHgyNBJfMHgxODY4MTQSXzB4MmIxM2M5El8weDIyODY0NxJfMHg1YzhiYWUSXzB4MmQxYzA2El8weDJkODI3YxJfMHg2NWU3MTESXzB4MTY0ZTRhEF8weDlmYzRkEl8weDI5NTViNhJfMHgxNjUwODUIMHg1ZgIlBDAwCDB4NWEIMHg2ZggweDI3JGRlY29kZVVSSUNvbXBvbmVudAYweGISXzB4MTZlZjZkEl8weDFlYWIxMhJfMHgxNzVkMDMSXzB4NTQyNDhlCDB4MzcCewIsAn0GcmVxCDB4MzQQL2FwcHRvdjUGMHhhDG1ldGhvZAgweDVlBmFjdAZhcmcIMHg5NBJfMHgyNDVlMTASXzB4MmMxZWYwCDB4MjkCIgQiOgYweDkSXzB4NDg1MzQ1El8weDIwODcxNRJfMHgzMGZiYzASXzB4MTVhNTljEl8weDNhZDZjMRJfMHg1NGJhMzgSXzB4NThmNThkCDB4MWMIMHgyZBBwb3N0VHlwZQgweDI4CGFlc1gIMHg0ORJfMHg1M2I1ZjUSXzB4MjBhZmRlEl8weDUzYTRiNxJfMHgxNWRjMTMSXzB4MzExZTFmEl8weDQ2NzM4MhJfMHg0ZTBiM2ISXzB4MWRhYTg4El8weGMyM2M0OBJfMHg1YTYzOGESXzB4NDFmNzNkEl8weGJkYzI1ZRJfMHg1YWFhNGISXzB4MzMzMWVjEl8weDQ5MjY1MBJfMHgyN2FjNmISXzB4MzFjMWNhEl8weDRhMDIyMBJfMHgxN2RkYjIIMHgyMApzdHlwZQgweDc4BjB4ZggweDUyCDB4NjEIMHg0NQg5bVZBCDB4NDIIMHgzNQgweDhiCDB4OGMIMHgzYg5kZXZpY2UxCmxvY2FsCDB4NDMEaWQEdWEIMHg4ZQgweDZjBDsgBjB4NwgweDU0CDB4ODkCKQgweDcxCDB4MmIIMHg3NAgweDYwCDB4NGMSXzB4NDNhMTRmEl8weDNhNWVhMBJfMHg1NzA4ZmQSXzB4MjE1NzQyCDB4ODISXzB4YzdmNGVmEl8weDQ4ZDIwYxJfMHgyMjhiZWUSXzB4NWM1MjYxEl8weDJiYmIzNggweDZkCDB4ODMGMHhkCDB4M2USXzB4NDE1OGRhEl8weDNmYzM0ZRJfMHgxNGRmN2ISXzB4MzJiNmQ2El8weDJhNjcwZQgweDIyCDB4OGESXzB4MzQ2NmQ2El8weDM3M2U3OBJfMHgxMzZhNDgSXzB4NWNlOTVjEl8weDMxNjkwZhJfMHg0MDM3MjkSXzB4MTYzYjk3El8weDQ2OGEwZBJfMHgzN2RlOGUSXzB4MjBiYzUyEl8weDM0ZTBlMhJfMHgzZTI1ZTQSXzB4NWE3YjdkEl8weDUwNWZmYhJfMHgzNDVhZmMSXzB4M2U2MDNkEl8weDI3ZjdjYRJfMHhmNTA3YTASXzB4ZTE1ZjgwEl8weDM3MGEyYRJfMHgyMjdmYzASXzB4NWFlYTBmEl8weDRkYWJlMBJfMHgzNTI2YTQSXzB4MmVmN2YxEl8weDE3NjJkMhJfMHgzYjY0ZDIQXzB4NDhhNmISXzB4NWQ1YzA4EF8weGRjYmUzEl8weDFiYjY3ZRJfMHg1YzQyYjMSXzB4M2YzNjQyCDB4OTIIMHgxZQgweDJmDGV4dGVuZAgweDMxBXt8i1cIMHg1ZAgweDE2BTBXOlMIMHg1NwgweDMyBe2LAIoIMHg3ZgV0XuNOCDB4N2IIaW5pdAVoUeiQAm4CdggweDMzCDB4MzgFkmOPXggweDNhCDB4NmEFAGewZQUAZ+1wCGhpdHMFfVnEiwpzY29yZQgweDY5DmZpbHRlcnMSXzB4MjEyZGEwCDB4M2YCeRJfMHgxNTUwOTQEe30SXzB4M2I4ZWMwEl8weDUxZDdmMhJfMHg1ZDE5MWQSXzB4MWFjNjU1El8weDNkOTgxMBJfMHg1ZDQ0YjkSXzB4NDY0Y2I4El8weDNjZjU3MRJfMHgzMzA4NTQSXzB4MzA4YzJhEHBhcnNlSW50EHBhZ2VTaXplCDB4NjUIMHg1MwgweDExBmV4dAgweDkxCDB4MjYIMHg0ZAgweDc1CDB4NjIScGFnZWNvdW50CGxpc3QSXzB4Mzg4ZTVhEl8weDliZWZjOBJfMHhkNDFlYjMSXzB4Mjk4NzkzEl8weGQ0YTE1ORJfMHgzNGIwYjgSXzB4NWIzMDQ4El8weDE5YjRjMhJfMHgzZGUzOTMIMHgxZjImX19wbGF0Zm9ybT1hbmRyb2lkJnNpZ249CDB4N2QSdm9kX2NsYXNzCDB4MTAQdm9kX2FyZWEIMHgyNQgweDcyCDB4OTYIMHg3NwgweDg2CDB4MTgIMHg2MwgweDU2HGhhc093blByb3BlcnR5CDB4MTQCIwgweDY3GHZvZF9wbGF5X3VybAgweDY0El8weDU2NWRmNggweDdlAiQIMHgxNxJfMHg0Njk0MzgSXzB4MmU5YjAyEl8weGMyMTcxZhJfMHhkNmY4YjMSXzB4NWViNzEzEl8weDM3ODYyYRJfMHhkNDdhYWMSXzB4MzkxZDllEl8weDU0Yjc2OBJfMHg0MzkzMTgIZmluZAgweDEyCDB4NTEyL2FwcHRvdjUvdjEvcGFyc2luZy9wcm94eQgweDgwFF9fcGxhdGZvcm0IMHg2NggweDU5CDB4NTUSXzB4NGFhNDYzEl8weDU4OGE5YhJfMHg0NTk5NmQSXzB4MTE0MTRlEl8weDM2MTBjOBJfMHgzYjM5MTMSXzB4MzllNmNlEl8weDUyNDIwMxJfMHg0N2FkNjIIMHgyMQR3ZAgweDk1CDB4NTAIMHgxNQgweDQ4CDB4MWISXzB4NDZkMThjEl8weDE1MzI1ZAYweGUCIBJfMHg0M2NlNTQSXzB4MWRmMWZjEl8weDI3YjBjMAgweDJhEl8weDU1MWYxNRJfMHgxODkwYWYSXzB4NjA0ZjE1El8weDE5NTE2ORJfMHg0NzliMjgSXzB4NDYzMmNlEl8weDUzNjcxNwgweDE5BC8vCDB4ODUIaHR0cAgweDNjFHVzZXItYWdlbnQIMHg3OQYweDgIMHg3MAgweDFhDGhlYWRlchJfMHgyZTlkZTQSXzB4NTM2NGU0El8weDRhNDFiYRJfMHgzMmUwNGQSXzB4M2VmY2M1El8weDRkMGViORJfMHg0NDAxYTASXzB4MmU0ZTRhCDB4MWQGMHhjCmJyYW5kBjB4NggweDRmEl8weDVlNjU4ZBJfMHg1MjM5OTMIMHg2YggweDQ0CDB4MmMSXzB4M2IyZDlmCGhvbWUOaG9tZVZvZBBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gPpAMBpgMBACuoAwAFAKoDAAGsAwACrgMAA7ADAASyAwAOAAYBoAEAAAAgLBbQDQCqAwAMrAMBDK4DAgywAwMMsgMEDLQDAA22AwENuAMCCboDAwm8AwQJvgMFCcADBgnCAwcJxAMICcYDCQ3IAwoNygMLDcwDDA3OAw0N0AMODdIDDw3UAxAB1gMRAdgDEgHaAxMB3AMUCd4DFQHgAxYB4gMXAeQDGAHmAxkJ6AMaCeoDGwHsAxwB7gMdAfADHgHyAx8B9AMgDfYDIQH4AyIB+gMjAfwDJAH+AyUBqAMmAQjoXL4EXxYAvgVfFwC+Bl8YAL4HXxoAvghfGwC+CV8cAL4KXx0AvgtfIAC+DF8hAL4NXyIAvg5fIwC+D18kAL4QXyYAvhFfJwC+El8oAL4TXykAvhRfKgC+FV8rACkEAAEAAAQBAQAABAIBAAAEAwEAAAQEAQAABAUBAAAEBgEAAAQHAQAABAgBAAAECQEAAAQKAQAABAsBAAAEDAEAAAQNAQAABA4BAAAEDwEAAAQQAQAABBEBAAAEEgEAAAQTAQAABBQBAAAEFQEAAAQWAQAABBcBAAAEGAEAAAQZAQAABBoBAAAEGwEAAARbAAAABBwBAAAEHQEAAAQeAQAAJiAABB8BAABMIAAAgAQgAQAATCEAAIAEIQEAAEwiAACABCIBAABMIwAAgAQjAQAATCQAAIAEJAEAAEwlAACABCUBAABMJgAAgAQmAQAATCcAAIAEJwEAAEwoAACABCgBAABMKQAAgAQpAQAATCoAAIAEKgEAAEwrAACABCsBAABMLAAAgAQsAQAATC0AAIAELQEAAEwuAACABC4BAABMLwAAgAQvAQAATDAAAIAERgAAAEwxAACABDABAABMMgAAgAQxAQAATDMAAIAEMgEAAEw0AACABDMBAABMNQAAgAQ0AQAATDYAAIAENQEAAEw3AACABDYBAABMOAAAgAQ3AQAATDkAAIAEOAEAAEw6AACABDkBAABMOwAAgAQ6AQAATDwAAIAEOwEAAEw9AACABDwBAABMPgAAgAQ9AQAATD8AAIAEPgEAAExAAACABD8BAABMQQAAgARAAQAATEIAAIAEQQEAAExDAACABEIBAABMRAAAgARDAQAATEUAAIAERAEAAExGAACABEUBAABMRwAAgARGAQAATEgAAIAERwEAAExJAACABEgBAABMSgAAgARJAQAATEsAAIAESgEAAExMAACABEsBAABMTQAAgARMAQAATE4AAIAETQEAAExPAACABE4BAABMUAAAgARPAQAATFEAAIAEUAEAAExSAACABFEBAABMUwAAgARSAQAATFQAAIAEUwEAAExVAACABFQBAABMVgAAgARVAQAATFcAAIAEVgEAAExYAACABFcBAABMWQAAgARYAQAATFoAAIAEWQEAAExbAACABFoBAABMXAAAgARbAQAATF0AAIAEXAEAAExeAACABF0BAABMXwAAgAReAQAATGAAAIAEXwEAAExhAACABGABAABMYgAAgARhAQAATGMAAIAEYgEAAExkAACABB4AAABMZQAAgARjAQAATGYAAIAEMAAAAExnAACABGQBAABMaAAAgARlAQAATGkAAIAEZgEAAExqAACABHoAAABMawAAgARnAQAATGwAAIAEaAEAAExtAACABGkBAABMbgAAgARqAQAATG8AAIAEawEAAExwAACABGwBAABMcQAAgARAAAAATHIAAIAEbQEAAExzAACABG4BAABMdAAAgARvAQAATHUAAIAEcAEAAEx2AACABDcAAABMdwAAgARxAQAATHgAAIAEcgEAAEx5AACABHMBAABMegAAgAR0AQAATHsAAIAEdQEAAEx8AACABHYBAABMfQAAgARCAAAATH4AAIAEdwEAAEx/AACABHgBAABMgAAAgAR5AQAATIEAAIAEegEAAEyCAACABHsBAABMgwAAgAR8AQAATIQAAIAEfQEAAEyFAACABDYAAABMhgAAgAR+AQAATIcAAIAEfwEAAEyIAACABIABAABMiQAAgASBAQAATIoAAIAEggEAAEyLAACABEEAAABMjAAAgASDAQAATI0AAIAEhAEAAEyOAACABIUBAABMjwAAgASGAQAATJAAAIAEhwEAAEyRAACABIgBAABMkgAAgASJAQAATJMAAIAEigEAAEyUAACABIsBAABMlQAAgASMAQAATJYAAIBfBQC+AGUFALw2Ae4OvgFN2wAAAF8GAGUGAASNAQAA7V8HAL9fCAALXwkAC18KALNfCwC/XwwAs18NAASOAQAAZQYABI8BAADtBJABAABlBgAEkQEAAO0EkgEAAGUGAASTAQAA7SYGAF8OAL4CZQ4AvJMB7g6+A03kAAAAXw8AZQ8AZQYABJQBAADtBJUBAADuXxAAZQ8AZQYABJYBAADtZQYABJcBAADt7mUPAGUGAASYAQAA7WUGAASZAQAA7e4mAgBfEQBlDwBlBgAEmgEAAO1lBgAEmwEAAO3uXxIAZQ8A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
|
1
0130/道长JS/cat/yt.js
Normal file
1
0130/道长JS/cat/yt.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1DSAgp5dC5qcxguL2xpYi9jYXQuanMcLi9saWIvdXRpbHMuanMcX19qc0V2YWxSZXR1cm4CXwxDcnlwdG8KZGF5anMKVXRpbHMMbGVnYWRvDnNpdGVLZXkQc2l0ZVR5cGUQZXh0SW5mb3MIaW5pdBJnZXRTdHJpbmcIaG9tZQ5ob21lVm9kEGNhdGVnb3J5DGRldGFpbAhwbGF5DHNlYXJjaBRnZXRIZWFkZXJzCmlzQmFuGGdldFNlYXJjaFVybBZ1cmxQYXR0ZXJuMRZ1cmxQYXR0ZXJuMhhwYXJzZVBhdHRlcm4acGFyc2VQYXR0ZXJuMRpwYXJzZVBhdHRlcm4yImh0bWxWaWRlb0tleU1hdGNoBFVBFGdldENhdGVVcmwsZ2V0Q2F0ZUZpbHRlclVybFByZWZpeCxnZXRDYXRlRmlsdGVyVXJsU3VmZml4HGdldEZpbHRlclR5cGVzHmdldFJlY29tbWVuZFVybCBnZXRQbGF5VXJsUHJlZml4FnBhcnNlVXJsTWFwFmdlblBsYXlMaXN0GmdldEZpbmFsVmlkZW8SZ2V0QXBpVXJsCGRlc2MSbWQ1RW5jb2RlFm1kNUVuY29kZTE2GGJhc2U2NEVuY29kZS5hZXNCYXNlNjREZWNvZGVUb1N0cmluZxR0aW1lRm9ybWF0IGFwaVwucGhwLy4qPy92b2QiYXBpXC5waHAvLis/XC52b2QQLy4rXD8uKz0sLioodXJsfHZ8dmlkfHBocFw/aWQpPRxodHRwcz86Ly9bXi9dKhRwbGF5ZXI9bmV3HjxkaXYgaWQ9InZpZGVvIiw8ZGl2IGlkPSJbXiJdKj9wbGF5ZXIiDS8ALwDGiZGY/pSlYxpIbHNKc1BsYXllclwoNjxpZnJhbWVbXHNcU10qP3NyYz0iW14iXSs/IjQ8dmlkZW9bXHNcU10qP3NyYz0iW14iXSs/IgZNRDUSc3Vic3RyaW5nBmVuYwxCYXNlNjQSc3RyaW5naWZ5CFV0ZjgKcGFyc2UGc3RyBmtleRx0cmFuc2Zvcm1hdGlvbgRpdhJhbGdvcml0aG0IbW9kZQ5wYWRkaW5nAi8YUEtDUzVQYWRkaW5nBnBhZApQa2NzNxJOb1BhZGRpbmceSVNPMTAxMjZQYWRkaW5nEElzbzEwMTI2BkFFUw5kZWNyeXB0FGNpcGhlcnRleHQIdGltZQxmb3JtYXQgWVlZWS9NTS9ERCBISDptbQZjZmcIc2tleQpzdHlwZQZleHQGIyMjBnVybAxoZWFkZXIGcmVxDmhlYWRlcnMOY29udGVudAxmaWx0ZXISanNvbkFycmF5DmNsYXNzZXMCaQhqc29uDHJlc3VsdBRjbGFzc2VzQXJyCGpPYmoQdHlwZU5hbWUMdHlwZUlkDG5ld0Nscw5maWx0ZXJzEmZpbHRlckFycgJrAmwOb25lTGluZQp0eXBlThB2YWx1ZUFycgJqBGt2Bmt2bwRzcAJuDmlzRW1wdHkCCgRcKwh0cmltAj0SdHlwZV9uYW1lDnR5cGVfaWQIcHVzaBxoYXNPd25Qcm9wZXJ0eQhsaXN0DmlzQXJyYXkIZGF0YRZ0eXBlX2V4dGVuZAIrDmluZGV4T2YFW3sJkA5yZXBsYWNlBXt8i1cIYXJlYQUwVzpTCGxhbmcF7YsAigh5ZWFyBXRe/U4CdgR7fQZ0aWQEcGcMZXh0ZW5kCnRvdGFsDGFwaVVybAx2aWRlb3MIdk9iaggjUE4jD1t7CZBjAGwAYQBzAHMADVt7CZBhAHIAZQBhAA1bewmQbABhAG4AZwANW3sJkHkAZQBhAHIABZJjj14SdG90YWxwYWdlEnBhZ2Vjb3VudApsaW1pdApmbG9vcgx2b2RfaWQQdm9kX25hbWUOdm9kX3BpYxZ2b2RfcmVtYXJrcxBuZXh0bGluawp0aXRsZQZwaWMKc3RhdGUIcGFnZQRpZAZ2b2QIZmxhZxBqaWV4aVVybBBqc29uSW5mbwxsdmRvdSsGWFktDHN1YnN0ciAwMTIzNDV5dHZtenhjcmZzKEFFUy9DQkMvUEtDUzVQYWRkaW5nIDFyZndqNjc4OTBjdmZicmcaaXNWaWRlb0Zvcm1hdEhodHRwOi8vamlleGkubHl5eXR2LmNuL2pzb24ucGhwP3VybD0ab2todHRwLzQuMTEuMBRVc2VyLUFnZW50CGNvZGUEangEd2QKcXVpY2skZW5jb2RlVVJJQ29tcG9uZW50BlVSTAUmTwZ0BcVgcoIFj3kpUgZLRVkILnZvZBhpb3Blbnl1bi5jb20SL2xpc3Q/d2Q9DCZwYWdlPQg/d2Q9FmFwaS5waHAvYXBwCnhnYXBwGHNlYXJjaD90ZXh0PQgmcGc9CHRlc3QSZXNlbGxhdXRvFjEuMTQuNjMuMTAxCHpqeXMGZGNkCGx4dWUSd2VldGFpLmNuEmhhb2thbmp1MQpmaXQ6OBB6amoubGlmZRBsb3ZlOTk4OQg4ZDhxDmxrLnB4dW4IaGd5eAo1MjF4NQpseHl5eQwwODE4dHYMZGl5b3VpDmRpbGlrdHYKcHB6aHUSYWl0ZXN1Y2FpCnp6LmNpDGNoeGpvbg53YXRjaG1pCnZpcGJwCGJodHYKeGZ5a2wYP2FjPWxpc3Qmd2Q9GD9hYz1saXN0JnptPQ5mcmVla2FuJkRhcnQvMi4xNCAoZGFydDppbykGenNiCGZreHMIeGF5cwh4Y3lzCHN6eXMIZHh5cwh5dHlzCHFueXMmRGFydC8yLjE1IChkYXJ0OmlvKRhva2h0dHAvNC4xLjAYRGFsdmlrLzIuMS4wFG5hdj90b2tlbj0UL2xpc3Q/dHlwZQwvdHlwZXMQZGlqaWF4aWFIaHR0cDovL3d3dy5kaWppYXhpYS5jb20vYXBpLnBocC9hcHAvFHZpZGVvP3RpZD0QaW9wZW55dW4WL2xpc3Q/dHlwZT0MP3R5cGU9Hj9hYz1saXN0JmNsYXNzPYcBJgBjAGwAYQBzAHMAPQBbewmQYwBsAGEAcwBzACYAYQByAGUAYQA9AFt7CZBhAHIAZQBhACYAbABhAG4AZwA9AFt7CZBsAGEAbgBnACYAeQBlAGEAcgA9AFt7CZB5AGUAYQByACYAbABpAG0AaQB0AD0AMQA4ACYAcABnAD0AIwBQAE4AIwCXASYAYwBsAGEAcwBzAD0AW3sJkGMAbABhAHMAcwAmAGEAcgBlAGEAPQBbewmQYQByAGUAYQAmAGwAYQBuAGcAPQBbewmQbABhAG4AZwAmAHkAZQBhAHIAPQBbewmQeQBlAGEAcgAmAGIAeQA9AJJjj14mAGwAaQBtAGkAdAA9ADEAOAAmAHAAYQBnAGUAPQAjAFAATgAjAGEmAHAAYQBnAGUAPQAjAFAATgAjACYAYQByAGUAYQA9AFt7CZBhAHIAZQBhACYAdAB5AHAAZQA9AFt7CZBjAGwAYQBzAHMAJgBzAHQAYQByAHQAPQBbewmQeQBlAGEAcgAUdHlwZUV4dGVuZAsrAGhR6JA9ACsAFHJlcGxhY2VBbGwCLEEKAJJjj14rAGhR6JA9ACsAAGewZT0AdABpAG0AZQArAABn7XA9AGgAaQB0AHMAKwDEiwZSPQBzAGMAbwByAGUA2QUGUnt8KwBoUeiQPQArADV1cV89AG0AbwB2AGkAZQArAN6P7X5nUj0AdAB2AHAAbABhAHkAKwD8fnqCPQB0AHYAcwBoAG8AdwArAKhSK289AGMAbwBtAGkAYwArADQASwA9AG0AbwB2AGkAZQBfADQAawArAFNPsoA9AHQAaQB5AHUACgBbewmQYwBsAGEAcwBzACsAaFHokD0AKwCcVWdSKwAxcsVgKwBQYBZgKwCoUlxPKwDReXteKwBnUsVgKwAYYolOKwBmiypTKwCvcmp/KwCoUjt1KwBHWXteKwBma6BPKwCSUWmWKwCqZxhiKwBQYBZgKwCsYJF1KwDKYJpgKwDPfnhRKwBSlyVmKwCHZXqCKwCuXzV1cV8rAORTxYgrAIZT8lMrANCPqFIrAJxRUWcrAMpgmmArAMpgmmArACZPBnQrAMVgcoIrAI95KVIrAAlOp34rAD9R5XorAFF/3H41dXFfCgBbewmQYQByAGUAYQArAGhR6JA9ACsAJ1lGlisAmZkvbisA8FN+bisAjn/9VisA8YL9VisA1Wz9VisA5WUsZysA6Zf9VisAt1/9VisA8Gz9VisAcFOmXisAf4ntc1lyKwCgUv9iJ1krAHZR1k4KAFt7CZB5AGUAYQByACsAaFHokD0AMgAwADIAMwArADIAMAAyADIAKwAyADAAMgAxACsAMgAwADIAMAArADIAMAAxADkAKwAyADAAMQA4ACsAMgAwADEANwArADIAMAAxADYAKwAyADAAMQA1ACsAMgAwADEANAArADIAMAAxADMAKwAyADAAMQAyACsAMgAwADEAMQArADIAMAAxADAAKwAyADAAMAA5ACsAMgAwADAAOAArADIAMAAwADcAKwAyADAAMAA2ACsAMgAwADAANQArADIAMAAwADQAKwAyADAAMAAzACsAMgAwADAAMgArADIAMAAwADEAKwAyADAAMAAwACRpbmRleF92aWRlbz90b2tlbj0UL3ZvZFBoYkFsbEpodHRwczovL3d3dy5kaWppYXhpYS5jb20vYXBpLnBocC9hcHAvIHZpZGVvX2RldGFpbD9pZD0MMTAxMGR5Qmh0dHA6Ly93d3cuMTAxMGR5LmNjL2FwaS5waHAvYXBwLyIvZGV0YWlsSUQ/dm9kX2lkPR4vZGV0YWlsP3ZvZF9pZD0GdmlkEHBsYXlVcmxzEnBsYXlGbGFncyB2b2RVcmxXaXRoUGxheWVyDnBsYXlVcmwIcHVybBJwYXJzZVVybHMYcGxheUZsYWdzUHJlFnBsYXlVcmxzUHJlEm5lZWRJbmRleAxwYXJzZTEMcGFyc2UyDHBhcnNlcw5tYXRjaGVyEG1hdGNoZXIxEHBsYXlMaXN0GHBsYXlMaXN0S2V5cxhwbGF5TGlzdFVybHMIdXJscwpzcElkeAhwVXJsDHVybE9iahhhcGkucGhwL2FwcC8Sdm9kX2NsYXNzEHZvZF95ZWFyEHZvZF9hcmVhEnZvZF9hY3Rvchh2b2RfZGlyZWN0b3IWdm9kX2NvbnRlbnQmdm9kX3VybF93aXRoX3BsYXllchp2b2RfcGxheV9mcm9tBiQkJBh2b2RfcGxheV91cmwScGFyc2VfYXBpEGluY2x1ZGVzBFlUCG0zdTgQdm9kX2luZm8adm9kX3BsYXlfbGlzdBZwbGF5ZXJfaW5mbwhzaG93CGh0dHAELy8KaHR0cDoELi4CLg5pbWdfdXJsCHR5cGUOcHVidGltZQp0cnVuawphY3RvchBkaXJlY3RvcgppbnRybxJ2aWRlb2xpc3QIa2V5cwh1cmw9AiQCIxZodG1sUGxheVVybBBwYXJzZVVybA50cnlKc29uDnNuaWZmZXISanNvblBhcnNlCjxodG1sBnNyYw+kAwKmA6gDAQAlqgMABACsAwABrgMAArADAAP6AQEOAAYBoAEAAAAJJhyHAwCsAwAMrgMBDLADAgyyAwMNtAMACbYDAQm4AwIJugMDCbwDBAG+AwUBwAMGAcIDBwHEAwgBxgMJAcgDCgHKAwsBzAMMAc4DDQHQAw4B0gMPCdQDEAnWAxEJ2AMSCdoDEwncAxQJ3gMVAeADFgHiAxcB5AMYAeYDGQHoAxoB6gMbAewDHAnuAx0B8AMeAfIDHwH0AyABqgMhAQjodb4FXwgAvgZfCQC+B18KAL4IXwsAvglfDAC+Cl8NAL4LXw4AvgxfDwC+DV8QAL4OXxEAvg9fEgC+EF8ZAL4RXxoAvhJfGwC+E18cAL4UXx0AvhVfHgC+Fl8fAL4XXyEAvhhfIgC+GV8jAL4aXyQAvhtfJQApC74ATfsAAABM+wAAAL4BTfwAAABM/AAAAL4CTf0AAABM/QAAAL4DTf4AAABM/gAAAL4ETf8AAABM/wAAAF8EAL9fBQCzXwYAJgAAXwcAOJ0AAAARBAABAAAhAQBfEwA4nQAAABEEAQEAACEBAF8UADidAAAAEQQCAQAAIQEAXxUAOJ0AAAARBAMBAAAhAQBfFgA4nQAAABEEBAEAACEBAF8XADidAAAAEQQFAQAAIQEAOJ0AAAARBAYBAAAhAQA4nQAAABEEBwEAACEBADidAAAAEQQIAQAAIQEAOJ0AAAARBAkBAAAhAQA4nQAAABEECgEAACEBADidAAAAEQQLAQAAIQEAJgcAXxgAC18gACmkAwEEAQB3Ag5DBgEAAQABAwEAFAFmAAEArgMBDGUAAEIMAQAAzyQBAEI3AAAAJQAApAMBAA5DBgEAAQABBAEAIAFmAAEArgMBDGUAAEIMAQAAzyQBAEI3AAAAJAAAQg0BAAC7CLsYJQIApAMBAA5DBgEAAQABBQEAKwFmAAEArgMBDGUAAEEOAQAAQQ8BAABCEAEAAGUAAEEOAQAAQREBAABCEgEAAM8kAQAlAQCkAwEADkMGAQAEAwQIAQC4AgemBAABAKgEAAEAqgQAAQCsBAABAK4EAQAgsAQBASCyBAECIK4DAQxhAgBhAQBhAABlAABBDgEAAEEPAQAAQhIBAADPJAEA02UAAEEOAQAAQREBAABCEgEAANAkAQDU0hHoGA5lAABBDgEAAEERAQAAQhIBAADSJAEA1gbHBsgGyeonEX14FwEAAAAAgAIOPXgYAQAAAQCAAg49eBkBAAACAIACDj2D6hHRQl0AAAAEGgEAACQBAOrLDmICABEEGwEAAKvoFWUAAEEcAQAAQR0BAAARYwIADuo5EQQeAQAAq+gVZQAAQRwBAABBHgEAABFjAgAO6hwRBB8BAACr6BNlAABBHAEAAEEgAQAAEWMCAA4OZQAAQSEBAABCIgEAAAvPTCMBAADQC2UAAEEYAQAAYgEAR0wYAQAAYgIATBkBAADSTBYBAAAkAwBCNwAAAGUAAEEOAQAAQREBAAAlAQCkAwEADkMGAQABAAEDAQASAcgEAAEAsAMCDGUAAM/tQiUBAAAEJgEAACUBAKQDAQAOYgYBvAMBAAEDAwAxAc4EAAEAtgMFCLgDBgi6AwcIz0EoAQAAEWYAAA7PQSkBAAARZgEADs9BKgEAANdCXQAAAAQrAQAAJAEAEWYCAA4GLqQDAQAOYgYBvgMCAAIEAAAVAtgEAAEA2gQAAQA4LgEAAM8L0EwvAQAA7otBMAEAAC6kAwEADmIGAcADARcBBQgAzAgY4gQAAQDYBAAAAOQEAAEA5gQAAgDoBAADAOoEAAQA7AQABQDuBAAGAPAEAAcA8gQACAD0BAAJAPYEAAoA+AQACwD6BAAMAPwEAA0A/gQADgCABQAPAIIFABAAhAUAEQCGBQASAIgFABMAigUAFACMBQAVAI4FABYA4AMaAPIDIwCsAwAM5gMdAPQDJAC+AwkAzAMQAM4DEQDb3OztxwfIZQIAQkgBAADDJAEAaYoAAADewwfuQl0AAAAESQEAACQBALNHQl0AAAAESgEAACQBAMkmAADItMrGxeejaUIBAADFxkdCSwEAACQAAEJdAAAABEwBAAAkAQDCE+e1oxHpMg4LwBOzR0JLAQAAJAAATE0BAADAE7RHQksBAAAkAABMTgEAAMEKxEJPAQAAwAokAQAOkwPqol4EAF4FAMNeBgDD7e6Ls+7BBDiYAAAAQhIBAADABCQBAMIEQlABAAAEUQEAACQBAOgiOJAAAABCUgEAAMAEQVEBAAAkAQDoDMAEQVEBAADM65YAwARCUAEAAARTAQAAJAEA6FEESQAAAMAEQVMBAACXqehBwARBUwEAAEJQAQAABFEBAAAkAQDoKziQAAAAQlIBAADABEFTAQAAQVEBAAAkAQDoEMAEQVMBAABBUQEAAMzqNMAEQlABAAAEUwEAACQBABHoIg44kAAAAEJSAQAAwARBUwEAACQBABHoCg7ABEFTAQAAzA4LwQUmAADBBmUCAEJIAQAAxCQBAJZplwIAALPKxsTno2mMAgAAxMZHwgdBTQEAAMEIXgcAwAjtlmlvAgAAwAdBTgEAAMEJC8AJTE4BAADACExNAQAAwQrAB0FUAQAAwQjPaTkCAADew8AI7kJdAAAABEkBAAAkAQDBCyYAAMEMZQIAQkgBAADDJAEA6AS06gKzwQ3ADcAL56Np2AEAAMALwA1HQksBAAAkAADBDmUCAEJIAQAAwA4kAQCWabEBAADADkJdAAAABFUBAAAkAQDCD7NHQksBAAAkAADCDsEQssAOQlYBAAAEVwEAACQBAKMR6F4OBB4AAADADkJYAQAABFcBAAC/JAIAwg6r6AoEWQEAAMIQ6joEWgEAAMAOq+gKBFsBAADCEOonBFwBAADADqvoCgRdAQAAwhDqFAReAQAAwA6rEegJDgRfAQAAwhAOC8AOTBQBAADAEEw2AAAAv0zeAAAAJgAATEAAAADCDkFAAAAAwRG0wRLAEsAP56NpzQAAAAvBFMAPwBJHQksBAAAkAADCE0JWAQAABEwBAAAkAQDBFbLAFavoIF4HAMAT7WqWAAAAwBTAE0NHAQAAwBTAE0NgAQAA6kbAE0INAQAAs8AVJAIAwRZeBwDAFu3paMAUwBZCSwEAACQAAENHAQAAwBTAE0INAQAAwBW0nSQBAEJLAQAAJAAAQ2ABAABlAgBCSAEAAMAUQUcBAAAkAQAR6BQOZQIAQkgBAADAFEFgAQAAJAEAEekODsARQk8BAADAFCQBAA6TEusu/7TAEeejEegXDsAOwBFDQAAAAMAMQk8BAADADiQBAA6TDesj/sAFQlABAAAEPAEAACQBABHpCw7ABQsVQzwBAAAOwAVBPAEAAMAJwAxJwAZCTwEAAMAKJAEADpMD63H9wAXABkMeAAAAOJgAAABCEAEAAMAFJAEALqQDAQAOYgYBwgMAAAABAAAGAARhAQAALqQDAQAOYgYBxAMEBwQIBgDRBwvEBQABAMYFAAEA4gQAAQDIBQABAMoFAAAAzAUAAQDkBAACAM4FAAMA6AQABADQBQAFAMAFAAYA8gMjAOIDGwDkAxwA9AMkAL4DCQDMAxAA2+zI3MTtz53dxO2d095eBADPQlgBAAAEaQEAANAkAgDXQlgBAAAEagEAAAfSqugZ0kJQAQAABB4AAAAkAQDoCdJBHgAAAOoCvyQCANdCWAEAAARrAQAAB9Kq6BnSQlABAAAEWgEAACQBAOgJ0kFaAQAA6gK/JAIA10JYAQAABGwBAAAH0qroGdJCUAEAAARcAQAAJAEA6AnSQVwBAADqAr8kAgDXQlgBAAAEbQEAAAfSqugZ0kJQAQAABF4BAAAkAQDoCdJBXgEAAOoCvyQCANdCWAEAAARuAQAAB9Kq6BnSQlABAAAEbgEAACQBAOgJ0kFuAQAA6gK/JAIA114FAM/t7ou17sg4mAAAAEISAQAAxCQBANa7ZNPSQlABAAAEbwEAACQBAOgaBEYAAADSQW8BAACXqegL0kFvAQAA1+vnANJCUAEAAARwAQAAJAEA6BoERgAAANJBcAEAAJep6AvSQXABAADX674A0kJQAQAABFMBAAAkAQARaawAAAAOBEkAAADSQVMBAACXqRFpmAAAAA7SQVMBAABCUAEAAARlAQAAJAEAEWl+AAAADgRGAAAA0kFTAQAAQWUBAACXqRHoZQ7SQVMBAABCUAEAAARxAQAAJAEAEehODgRGAAAA0kFTAQAAQXEBAACXqRHoOA7SQVMBAABBcQEAAMjSQVMBAABBZQEAAMc4lwAAAEJyAQAAw8SbJAEA08PEnLOqEegGDs+0ndcOB8kmAADK0kJQAQAABFEBAAAkAQDoIDiQAAAAQlIBAADSQVEBAAAkAQDoC9JBUQEAAM3rjgDSQlABAAAEUwEAACQBAOhNBEkAAADSQVMBAACXqeg+0kFTAQAAQlABAAAEUQEAACQBAOgpOJAAAABCUgEAANJBUwEAAEFRAQAAJAEA6A/SQVMBAABBUQEAAM3qMdJCUAEAAARTAQAAJAEAEeggDjiQAAAAQlIBAADSQVMBAAAkAQAR6AkO0kFTAQAAzQ4HxaxpsQAAALPBBMAExeejaaQAAADFwARHwQULwQbABUJQAQAABHMBAAAkAQDoPMAGwAVBcwEAAENzAQAAwAbABUF0AQAAQ3QBAADABsAFQXUBAABDdQEAAMAGwAVBdgEAABVDdgEAAOo6wAbABUF3AQAAQ3MBAADABsAFQXgBAABDdAEAAMAGwAVBeQEAAEN1AQAAwAbABUF6AQAAFUN2AQAADsZCTwEAAMAGJAEADpME61j/OJgAAABCEAEAAAvQTHsBAADPTHABAAC7WkxxAQAAAX+WmABMZQEAAMZMUQEAACQBAC6kAwEADmIGAcYDAQQBBgYATAX4BQABAMwFAAAA2AQAAQDsBAACAPoFAAMA8gMjAOoDHwD0AyQAvgMJAMwDEADuAyEA2+zH3MPtz53I3d7EXgQAxO3ui7buyAvJC8peBQDDOJgAAABCEgEAAMQkAQDExs8iBQAOxcYmAQBDUQEAADiYAAAAQhABAADFJAEALqQDAQAOYgYByAMDBQMGBgHqAwj8BQABAPgFAAEA2gEAAQD+BQQAIIAGAAAA2AQEASCkBAQDIOwEAAIArAMADLQDBAiyAwMMvgMJAOwDIAjwAyIAZQAAQkgBAADQJAEA6CALs0wSAQAAv0wsAQAAwQQ4mAAAAEIQAQAAwAQkAQAus9BCVgEAAASBAQAAJAEApBHpEg6z0EJWAQAABIIBAAAkAQCkafIAAABhAwBhAgBhAAC/x7PQQlYBAAAEggEAACQBAKToCdARYwAADupbZQEAQv4AAADQQoMBAAC5JAEABIQBAAAEhQEAAASGAQAAJAQAEWMAAA5lAgBChwEAAGIAACQBAOgiC7NMEgEAAGIAAEwsAQAAwQQ4mAAAAEIQAQAAwAQkAQAu3gSIAQAAYgAAnQsEiQEAAEyKAQAA7ovIOJgAAABCEgEAAMQkAQDIYgAAybTKvMgAxEGLAQAAqRHoEg7EQSwBAAARYwIADrMRYwMADgtiAwBMEgEAAGICAEwsAQAAwQQ4mAAAAEIQAQAAwAQkAQAuZQIAQocBAADQJAEA6CALs0wSAQAA0EwsAQAAwQQ4mAAAAEIQAQAAwAQkAQAuJgAAyLNlAABCSAEAAGUEAM9HJAEA6ATE6gZlBADPR8zno+gfB14FAM/E0O+LwgSs6BE4mAAAAEIQAQAAwAQkAQAuZQIAQocBAADQJAEA6AS/6iYLtEwSAQAAvQBMjAEAANBMLAEAAMEEOJgAAABCEAEAAMAEJAEALqQDAQAHAjEOYgYBygMCBQIFBgCzAweaBgABAJwGAAEA5AQAAADOBQABAOgEAAIA0AUAAwDABQAEANADEgDyAyMA9AMkAL4DCQDMAxAArAMADNvc7DiPAQAAz+3u093ez14EAM/t7ou47tM4mAAAAEISAQAAzyQBANMmAADHJgAAyM9CUAEAAARRAQAAJAEA6CA4kAAAAEJSAQAAz0FRAQAAJAEA6AvPQVEBAADL644Az0JQAQAABFMBAAAkAQDoTQRJAAAAz0FTAQAAl6noPs9BUwEAAEJQAQAABFEBAAAkAQDoKTiQAAAAQlIBAADPQVMBAABBUQEAACQBAOgPz0FTAQAAQVEBAADL6jHPQlABAAAEUwEAACQBABHoIA44kAAAAEJSAQAAz0FTAQAAJAEAEegJDs9BUwEAAMsOZQUAQkgBAADDJAEAlmmkAAAAs8nFw+ejaZkAAADDxUfKC8EExkJQAQAABHMBAAAkAQDoOMAExkFzAQAAQ3MBAADABMZBdAEAAEN0AQAAwATGQXUBAABDdQEAAMAExkF2AQAAFUN2AQAA6jbABMZBdwEAAENzAQAAwATGQXgBAABDdAEAAMAExkF5AQAAQ3UBAADABMZBegEAABVDdgEAAA7EQk8BAADABCQBAA6TAutk/ziYAAAAQhABAAALxExRAQAAJAEALqQDAQAOQwYBzAMBAQEEAQAOAqAGAAEA3gQAAADeAxkAC8sEigEAAHHbz+1JwyikAwEADkMGAc4DAQABBAAAOQGoBAABALLPQlYBAAAEkQEAACQBAKMR6SYOss9CVgEAAASSAQAAJAEAoxHpEg6yz0JWAQAABJMBAAAkAQCjKKQDAQAOQwYB0AMCAAIEAQDsBQKgBgABAKgGAAEA0gMTCLLPQlYBAAAElQEAACQBAKPoM7LPQlYBAAAElgEAACQBAKPoEc8ElwEAAJ3QnQSYAQAAnSjPBJkBAACd0J0EmAEAAJ0oss9CVgEAAASaAQAAJAEAoxHpEg6yz0JWAQAABJsBAAAkAQCj6BHPBJwBAACd0J0EnQEAAJ0oZQAAQp4BAADPJAEAaWMCAACyz0JWAQAABJ8BAAAkAQCjEWorAgAADrLPQlYBAAAEoAEAACQBAKMRahQCAAAOss9CVgEAAAShAQAAJAEAoxFq/QEAAA6yz0JWAQAABKIBAAAkAQCjEWrmAQAADrLPQlYBAAAEowEAACQBAKMRas8BAAAOss9CVgEAAASkAQAAJAEAoxFquAEAAA6yz0JWAQAABKUBAAAkAQCjEWqhAQAADrLPQlYBAAAEpgEAACQBAKMRaooBAAAOss9CVgEAAASnAQAAJAEAoxFqcwEAAA6yz0JWAQAABKgBAAAkAQCjEWpcAQAADrLPQlYBAAAEqQEAACQBAKMRakUBAAAOss9CVgEAAASqAQAAJAEAoxFqLgEAAA6yz0JWAQAABKsBAAAkAQCjEWoXAQAADrLPQlYBAAAErAEAACQBAKMRagABAAAOss9CVgEAAAStAQAAJAEAoxFq6QAAAA6yz0JWAQAABK4BAAAkAQCjEWrSAAAADrLPQlYBAAAErwEAACQBAKMRarsAAAAOss9CVgEAAASwAQAAJAEAoxFqpAAAAA6yz0JWAQAABLEBAAAkAQCjEWqNAAAADrLPQlYBAAAEsgEAACQBAKMR6XYOss9CVgEAAASzAQAAJAEAoxHpYg6yz0JWAQAABLQBAAAkAQCjEelODrLPQlYBAAAEtQEAACQBAKMR6ToOss9CVgEAAAS2AQAAJAEAoxHpJg6yz0JWAQAABLcBAAAkAQCjEekSDrLPQlYBAAAEuAEAACQBAKPoEc8EuQEAAJ3QnQSYAQAAnSjPBLoBAACd0J0EmAEAAJ0ovyikAwEADkMGAd4DAQABBAAAhQIBoAYAAQCyz0JWAQAABJoBAAAkAQCjEekmDrLPQlYBAAAEmwEAACQBAKMR6RIOss9CVgEAAAS7AQAAJAEAo+gHBLwBAAAoss9CVgEAAAS9AQAAJAEAoxFqjQAAAA6yz0JWAQAABL4BAAAkAQCjEel2DrLPQlYBAAAEvwEAACQBAKMR6WIOss9CVgEAAATAAQAAJAEAoxHpTg6yz0JWAQAABMEBAAAkAQCjEek6DrLPQlYBAAAEwgEAACQBAKMR6SYOss9CVgEAAATDAQAAJAEAoxHpEg6yz0JWAQAABMQBAAAkAQCj6AcExQEAACiyz0JWAQAABJUBAAAkAQCj6AcExgEAACgExwEAACikAwEADkMGAeADAQABBAAAZAGgBgABALLPQlYBAAAEmgEAACQBAKMR6RIOss9CVgEAAASbAQAAJAEAo+gJzwTIAQAAnSiyz0JWAQAABJUBAAAkAQCj6COyz0JWAQAABJYBAAAkAQCj6AnPBMkBAACdKM8EygEAAJ0ovyikAwEADkMGAeIDAQABBAAAiQEBoAYAAQCyz0JWAQAABJoBAAAkAQCjEekSDrLPQlYBAAAEmwEAACQBAKPoKLLPQlYBAAAEywEAACQBAKPoDgTMAQAA1wTNAQAAnSjPBM0BAACdKLLPQlYBAAAElQEAACQBAKPoI7LPQlYBAAAEzgEAACQBAKPoCc8EzwEAAJ0ozwTQAQAAnSjPBNEBAACdKKQDAQAOQwYB5AMBAAEEAABKAaAGAAEAss9CVgEAAASaAQAAJAEAoxHpEg6yz0JWAQAABJsBAAAkAQCj6AcE0gEAACiyz0JWAQAABJUBAAAkAQCj6AcE0wEAACgE1AEAACikAwEADkMGAeYDAgICBgEA0wEEoAYAAQCqBwABAKYEAQAgqAQAAACsAwAMYQAAv8dlAABCSAEAANAkAQCW6GnQfOpgyAQeAAAAxKwR6B8OBFoBAADErBHoFA4EXAEAAMSsEegJDgReAQAAxKwR6TMOYgAABFcBAACdxJ0E1gEAAJ3QxEdC1wEAAATYAQAABFUBAAAkAgCdBEkBAACdEWMAAA5/6J8ODrLPQlYBAAAElQEAACQBAKPoEGIAAATZAQAAnRFjAADqMrLPQlYBAAAEmgEAACQBAKMR6R8Oss9CVgEAAASbAQAAJAEAoxHpCw4E2gEAABFjAAAOYgAAKKQDAQAOQwYB6AMBAAEEAABKAaAGAAEAss9CVgEAAASaAQAAJAEAoxHpEg6yz0JWAQAABJsBAAAkAQCj6AnPBNsBAACdKLLPQlYBAAAElQEAACQBAKPoCc8E3AEAAJ0ovyikAwEADkMGAeoDAQABBAAAogEBoAYAAQCyz0JWAQAABJoBAAAkAQCjEekSDrLPQlYBAAAEmwEAACQBAKPoR7LPQlYBAAAEywEAACQBAKPoDgTdAQAA1wTeAQAAnSiyz0JWAQAABN8BAAAkAQCj6A4E4AEAANcE3gEAAJ0ozwTeAQAAnSiyz0JWAQAABJUBAAAkAQCj6COyz0JWAQAABM4BAAAkAQCj6AnPBOEBAACdKM8E4gEAAJ0ovyikAwEADkMGAe4DBR4FBwUA0xEjoAYAAQCSAQABAOoEAAEA+gUAAQDGBwABAMgHAAAAygcAAQCmBQACAMwHAAMA6AQABAD8BQAFAM4HAAYA0AcABwDSBwAIANQHAAkA1gcACgDYBwALAOgECQAghgUKACD0AQAMANoHAA8A3AcAEADeBwARAOAHABIA4gcAEwCGBQAUAOQHABUA5gcAFgD8BAAXAOgHABgA6gcAGQDsBwAaAO4HABsA8AcAHADYBAAdAKwDAAzsAyAI2AMWCNoDFwjSAxMIJgAAxyYAAMiyz0JWAQAABPkBAAAkAQCsaYkCAADQQVMBAADJ0sVBcwEAAENzAQAA0sVBdAEAAEN0AQAA0sVBdQEAAEN1AQAA0sVB+gEAAENNAQAA0sVB+wEAAEP7AQAA0sVB/AEAAEP8AQAA0sVBdgEAAEN2AQAA0sVB/QEAAEP9AQAA0sVB/gEAAEP+AQAA0sVB/wEAAEP/AQAAxUEAAgAAymUAAEJIAQAAxUEBAgAAJAEAaSsBAABlAABCSAEAAMYkAQDoLMVBAQIAAEJdAAAABAICAAAkAQDIxUEDAgAAQl0AAAAEAgIAACQBAMfrugezwQTABMbno2mvBwAAxsAER8IOQYsBAABCSwEAACQAAMEFZQAAQkgBAADABSQBABHoEw7ADkE2AAAAQksBAAAkAADCBQ7EQk8BAADABSQBAA7ADkEsAQAAwQbDQk8BAADABiQBAA5lAABCSAEAAMAOQQQCAAAkAQDoBL/qEMAOQQQCAABCSwEAACQAAMEHJgAAwQhlAABCSAEAAGUBAMAFRyQBAOgNZQEAwAVxwAgWSeoJZQEAwAVHwggOZQAAQkgBAADAByQBABHpHg7ACEIFAgAAwAckAQAR6Q4OwAhCTwEAAMAHJAEADpME6xf/xUEBAgAAQl0AAAAEAgIAACQBAMEJxUEDAgAAQl0AAAAEAgIAACQBAMEKJgAAwQthDADACXzqVMEMZQAAQkgBAADACWIMAEckAQAR6T0OwAliDABHQgUCAAAEBgIAACQBABHpFQ7ACWIMAEdCBQIAAAQHAgAAJAEAEegPDsALQk8BAABiDAAkAQAOf+irDg5hDQDAC33qI8ENxEJPAQAAwAliDQBHJAEADsNCTwEAAMAKYg0ARyQBAA6AAOjbDoPrCgayz0JWAQAABJsBAAAkAQCjaWQBAADQQVMBAABBCAIAAMnSxUFzAQAAEekFDlsEAENzAQAA0sVBdAEAAEN0AQAA0sVBdQEAAEN1AQAA0sVB+gEAAENNAQAA0sVB+wEAAEP7AQAA0sVB/AEAAEP8AQAA0sVBdgEAAEN2AQAA0sVB/QEAAEP9AQAA0sVB/gEAAEP+AQAA0sVB/wEAAEP/AQAAxUEAAgAAyrPBBMAExuejaVgFAAC/xsAER8IOQYsBAAAR6QMOv0JLAQAAJAAAwgWrEegYDsAOQTYAAAAR6QMOv0JLAQAAJAAAwgUOxEJPAQAAwAUkAQAOw0JPAQAAwA5BLAEAACQBAA7ADkEEAgAAEekDDr9CSwEAACQAAMEHJgAAwQhlAABCSAEAAGUBAMAFRyQBAOgNZQEAwAVxwAgWSeoJZQEAwAVHwggOv8AHqxHpHg7ACEIFAgAAwAckAQAR6Q4OwAhCTwEAAMAHJAEADpME6zf/ss9CVgEAAASVAQAAJAEAo2liAgAA0EFTAQAAydLFQXMBAAAR6QUOWwQAQ3MBAADSxUF0AQAAQ3QBAADSxUF1AQAAQ3UBAADSxUH6AQAAEekDDr9DTQEAANLFQfsBAAAR6QMOv0P7AQAA0sVB/AEAABHpAw6/Q/wBAADSxUF2AQAAEekDDr9DdgEAANLFQf0BAAAR6QMOv0P9AQAA0sVB/gEAABHpAw6/Q/4BAADSxUH/AQAAEekDDr9D/wEAAMVBCQIAAMqzwQTABMbno2nFAwAAxsAER8IOQQoCAABBegAAAMIFEekODsAOQQoCAABBCwIAAMEFxEJPAQAAwAUkAQAOw0JPAQAAwA5BLAEAACQBAA7ADkEKAgAAQRIBAABCXQAAAATYAQAAJAEAwQ/ADkEKAgAAQe4BAABCXQAAAATYAQAAJAEAwRDAD0JcAAAAwBAkAQDBESYAAMEIZQAAQkgBAABlAQDABUckAQDoDWUBAMAFccAIFknqCWUBAMAFR8IIDrPBFMAUwBHno2ngAAAAssARwBRHwgdCVgEAAAQMAgAAJAEAo+gcZQIAQoYAAADAByQBAMISEehtDsASs0fCB+pkssAHQlYBAAAEDQIAACQBAKPoImUCAEKGAAAAwAckAQDCEhHoPw4EDgIAAMASs0edwgfqMGUDAEKGAAAAzyQBAMISEegfDmUCAEKGAAAAzyQBAMITEegNDsASs0fAE7NHncIHDsAHQlgBAAAEDwIAAAQQAgAAJAIAQksBAAAkAADCBxHoHw7ACEIFAgAAwAckAQCWEegODsAIQk8BAADAByQBAA6TFOsb/5ME61f+ZQQAQp4BAADPJAEAaRMCAADQydLFQXMBAAAR6QUOWwQAQ3MBAADSxUF4AQAAQ3QBAADSxUERAgAAQ3UBAADSxUESAgAAQlsAAAAE2AEAACQBAENNAQAA0sVBEwIAAEP7AQAA0sVBWgEAAEJbAAAABNgBAAAkAQBD/AEAANLFQRQCAABDdgEAANLFQRUCAABCWwAAAATYAQAAJAEAQ/0BAADSxUEWAgAAQlsAAAAE2AEAACQBAEP+AQAA0sVBFwIAAEP/AQAAxUEYAgAAwRU4jwAAAEIZAgAAwBUkAQDBFrPBF8AXwBbno2k3AQAAwBbAF0fBBSYAAMEIZQAAQkgBAABlAQDABUckAQDoDWUBAMAFccAIFknqCWUBAMAFR8IIDsAVwAVHwRgmAADBGbPBFMAUwBjno2m/AAAAwBjAFEfCHEEsAQAAwR2ywB1CVgEAAAQaAgAAJAEAo+h7wB1CVgEAAAQaAgAAJAEAt53BGsAdQg0BAACzwBokAgBCSwEAACQAAMIbEegfDsAIQgUCAADAGyQBAJYR6A4OwAhCTwEAAMAbJAEADsAZQk8BAADAHEF4AQAABBsCAACdwB1CDQEAAMAaJAEAQksBAAAkAACdJAEA6hvAGUJPAQAAwBxBeAEAAAQbAgAAncAdnSQBAA6TFOs8/8RCTwEAAMAFJAEADsNCTwEAAMAZQlsAAAAEHAIAACQBACQBAA6TF+vE/tLEQlsAAAAEAgIAACQBAEMBAgAA0sNCWwAAAAQCAgAAJAEAQwMCAAAppAMBAA5iBgHwAwMHAwUFANwBCvwFAAEA0gcAAQDYBAABALoIAAAA6AQAAQC8CAACAOAEAAMAvggABADACAAFAIYFAAYArAMADPQDJAC+AwkAsgMDDNwDGAi/x7PIxNDno2m3AAAA0MRHyWUAAEJIAQAAxSQBAJZpnAAAAAQBAAAAxaxpkAAAANzdxdGdC+6Lt+7KB8EEB2UDAEIhAgAA0cYkAgDCBKzoJsAEQlABAAAELAEAACQBAOgVwARCUAEAAAQtAQAAJAEA6ATABC6yxkJWAQAABCICAAAkAQCj6DW0lsEFs8EGwAZlBADno+gcZQQAwAZHQp4BAADGJAEA6AezlsEF6gWTBurdwAUR6AQOxcsOkwHrRv+/w6zoFgu0TBIBAADDTOcBAADRTCwBAADqAgcupAMBAA5DBgHyAwAAAAMCACAArAMADLoDBwhlAABCSAEAAGUBACQBAOgDvyhlAQCzR0JLAQAAJAAAKKQDAQAOQwYB9AMCAAICAQASAsYIAAEApAgAAQC6AwcItGUAAOejEegHDmUAALRHDs8opAMBAA5DBgGqAwAAAAIHADIAvAMIAMADCgDCAwsAxAMMAMYDDQDIAw4AygMPAAvbTN4AAADcTOAAAADdTOEAAADeTOIAAABeBABM4wAAAF4FAEzkAAAAXgYATOUAAAAopAMBAA==
|
1
0130/道长JS/cat/yzys_open.js
Normal file
1
0130/道长JS/cat/yzys_open.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1DRBBh5enlzX29wZW4uanMsYXNzZXRzOi8vanMvbGliL2NhdC5qcxxfX2pzRXZhbFJldHVybgxDcnlwdG8KZGF5anMMamluamEyBlVyaQJfDl8weDIzMGYOXzB4MzMxMhJfMHg0YjE2NTQSXzB4OWIwOTk5El8weDMwMTdkNRJfMHgyMDIxMmYSXzB4MjE0NDljEl8weDRkMWYxYxJfMHg5MGU4YzISXzB4NDRkMjhlEl8weDRiMjNjMRJfMHg0ZGM5ODQSXzB4NGNmN2I5El8weDE5NWJmNRJfMHgzYmU0MTISXzB4NGQ1Y2FkEl8weDZmNTA0NxJfMHgzYjEwZTcSXzB4MTY2MmY4El8weDRhMDFjMhJfMHg0NWM1NDgSXzB4YzJkODg3El8weDQwNTlmMhJfMHg0Nzc0OTQSXzB4MWZjZGVmEl8weDQwMTQ5MhJfMHgxMDA4YzUSXzB4NTgwZDc3El8weDVkNzljYxJfMHg0MzMxZGISXzB4NWEwMmNlEl8weGZmNTZjYRJfMHg0NmI3NjkSXzB4NWQ5MTE0El8weGU5NGZjMhJfMHgyNjFiNDISXzB4OTMwZTY1El8weDU5NjAwMBJfMHgyNTA1NWESXzB4MTM4ZGJmDiBCdWlsZC8MZG9tYWluBjB4MQ5jb250ZW50DnJlbGVhc2UIOW1WQQxaaWxtTk4MY0Rld2xvHEhVQVdFSSBNYXRlIDQwCFV0ZjgGbWFwEmxhbmdfbGlzdAhHWW1sCnRpdGxlBnVybAhodHRwDnVzZXJfaWQSbGFzdF9wYWdlFGNtc19zeXN0ZW0ISXNtORZ2b2RfcmVtYXJrcwxyYW5kb20MZXh0ZW5kCFVvMiMIaGl0cwpvcmRlcgpwYXJzZQxjaGFyQXQUY2hhckNvZGVBdDh3cjlSQjhLVUtzS2d3cFhEbGNLWHc3VnlMY09hBjB4MghjYXRlDHZhUk1jRQhlMGhFEnZvZF9jbGFzcz4vYXBwdG8vdjEvdm9kL2dldExpc3RzP3R5cGVfaWQ9EnZvZF9hY3RvcghkYXRhCDZJJFoiZ2V0X2dsb2JhbF9jb25maWcOUmVmZXJlcghlWTdnBmxvZygvYXBwdG8vdjEvdXNlci9sb2dpbgpzaGlmdAZlbmNARGFsdmlrLzIuMS4wIChMaW51eDsgVTsgQW5kcm9pZCAIeXp5cxRVc2VyLUFnZW50CHRyaW0MdmVyaWZ5EHRyeSBuZXh0FnZvZF9jb250ZW50DEhtZHhmZgx5WlNES1UIZmluZCB3NHZDdDhLRHdvekNsZz09SE5jTzlTOE9RdzUxZnc1bkRzOE84Vmp0K3c1YkNwY0tYd3FJPRJ0eXBlX25hbWU8L2FwcHRvL3YxL3ZvZC9nZXRWb2RTZWFyY2g/d2Q9DGNvbmZpZw5jb25zb2xlggFBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPQhIZ00zCHBvc3QKc3R5cGUYbG9naW5fdmVyaWZ5DnR1Y2hlbmcWcGxheWVyX2luZm8wL2FwcHRvL3YxL3ZvZC9nZXRWb2Q/aWQ9CGVhY2gQbG9jYXRpb24OZW5hYmxlZAp1c2VyMRJzdWJzdHJpbmcSeWVhcl9saXN0FnRvVXBwZXJDYXNlDCZwYWdlPRpnZXRfaG9tZV9jYXRlEnN0cmluZ2lmeQhza2V5CCQhSm0wd3E4Nnc3M0NtTU9wSGNPZXc2SEN1eXc9IGFwcGxpY2F0aW9uL2pzb24Kc2xpY2USYXJlYV9saXN0DHdycnZlQTwvYXBwdG8vdjIvY29uZmlnL2dldD9wPWFuZHJvaWR6YWJhY2RlZmdoamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSEpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OVB3cVp0Q0EzRHNzSzlXTU9md3B3N3dybkRrTUtXWWhGdXdvTmt3b3c9QHt9LmNvbnN0cnVjdG9yKCJyZXR1cm4gdGhpcyIpKCApBjB4Ng5yZWZlcmVyFHN0YXJ0c1dpdGgWZ2V0X3BhcnNpbmcWdG9Mb3dlckNhc2UUdXNlci1hZ2VudAhhdG9iCHB1c2gUcmVwbGFjZUFsbAhhcmVhDmluZGV4T2YGMHgzDHhJVVlacgx2b2RfaWQGMHg0BjB4MBB2b2RfbmFtZRJ2ZXJpZnlLZXkKdG9rZW4uL2FwcHRvL3YxL3BhcnNpbmcvcHJveHkIdGltZQhOKW5sCm1vZGVsFHJlZ192ZXJpZnkIa2V5cy4vYXBwdG8vdjEvdXNlci9yZWdpc3Rlcg5oZWFkZXJzDnRpbWVvdXQKc2NvcmUOdm9kX3BpYwxCYXNlNjQMU1FqZXRRMiZfX3BsYXRmb3JtPWFuZHJvaWQmX19pYz0mcmV0dXJuIChmdW5jdGlvbigpIA5pc0VtcHR5Cmxpc3RzIFozdzFCTUtZS2dOYXc2WT0YZnJvbUNoYXJDb2RlCnR5cGVzDmJ1aWxkSWRUaHR0cDovL2RycHkubm9raWEucHJlc3M6ODAyOC9vY3IvZHJweS90ZXh0CE1vemkOcmVwbGFjZQZrZXkYdzc3RHZzTzl3cTlWBnB3ZIACTk1PQndxdFFQOE8zdzRnV3c2VTR3N2N5d29IQ3BuM0Nuc09BZEhaUHc2N0NnMmpDa1M1SXc3RER1MERDbDM1N1k4S3h3ckxEcUM0ZEdzT0d3NGZEdXl0TWFjTzJ3b05td293SUZ3d2pFc0t4SjNzRndyUXFIM25Da2NLTWZRPT0GMHhlCDB4MmbgAXc1dkR2OEtSVlJzVWJCVW1NbHJEZ2NPd3dvcHRMeVREbWhuQ2dpVEN0MGJEbnNPUHdxSWl3NFZ1d3JQRHVUbkNqc0tMdzcxc0tYTnhPUlRDaWxaZHc3ekRpbnJEcmNLbHc2OHNYc0t3TURYRHV5RT0IMHg4Mnh3cVJ6Tk1Lc01jS0h3cjhKYm0wSnc3L0RuVGdlSXNPbkxteFF3cEVVR0ExM3c2YkNsU2hSV0N6RGdRPT3YBHc1SERpTUs1dzVVNXdxYkRxY0tQZFhBU1J5ZHBOc0t0dzdIQ3NDOUxiTUs0VFZ6Q29USENyc09EUGNLZ3c0ekNpY0tkdzVJTGZFZkNqTUtkSWhURHQ4S1pXVy9EcjEzQ3VjT0F3cVErd3FwbEF3WENxOE9jdzd4NXdwN0NuY09zd29zUXdvTVpabGtFd3E0dHc1ekRuTUtSRDF6Q3VYRENuc09NUjN2RHVXMXZaOEt6d3FyRHFEUlhYeVRDcWxiRHJjT3hMOEs4U2pGTkR3RTBWOE93T3NPdWVzS3plekVSd3BGYXdwRERvbDFudzZ2RHNBWVNDY09GVlg5Wnc1VkxXY0tFd3A4WXdxRENtUTUwTzhLa3dxTWpVTU8xd3BvNVljS3ZUY090dzRzPQgweDY0CDB4NmYIMHg4MwgweDhiCDB4MzEINlY0agYweDUIMHg4ZQgweDNmCDB4MjcIMHg0MAgweDc4CDB4N2MIMHgyZRJfMHgzOTVkMDESXzB4MjMwZjYyEl8weDMzMTIxORJfMHgzNGM0NWQQXzB4Mjg2MzkSXzB4MWQ0NjcxEl8weDNlMzgzORJfMHgzOGE5MDAIMHgzOAgweDkxEl8weDE5ZjVkORJfMHg0MzA3ZjISXzB4MTRiMjkzEl8weDUyNTNiNBJfMHgxZDkzMmYGMHg5CDB4NjgIMHg2OQgweDJjEl8weDI4MDY2ZRJfMHhjNTk3YjUSXzB4NDM5NDE5El8weDJjZGNmNwgweDU0CDB4MzAEKTsMd2luZG93CDB4MTMIMHgzNxJfMHgyNjJjN2YSXzB4MmRkZTBiEl8weDg4M2Y0OBJfMHgxODFiNjUSXzB4NTdiOGU4El8weDU5Mjk2OBJfMHgxZTc0NTEIMHg1ZAgweDgwCDB4M2IIMHg1OBJfMHgyMjRkZjMSXzB4OGViMDU0El8weDQ1OGRlNRJfMHgyNDgxZjISXzB4MzUwNjg5El8weGRlMTEzMBJfMHgxZmEyOTASXzB4MTk2MTAzEl8weDE3NDVlMhJfMHg1OTcwNjkSXzB4NGFiYjdmAiUEMDAkZGVjb2RlVVJJQ29tcG9uZW50CDB4ODEIMHg3MRJfMHgxMDE3ZDYSXzB4MjI2YTk5El8weDIyMTkwOCgvYXBwdG8vdjEvdmVyaWZ5L2dldAgweDhmBnJlcQ5pbWdfdXJsDGJ1ZmZlcggweDY1CDB4NWUSXzB4MTA2NWFkEl8weDE2OTdlMBJfMHgxZjZkNjESXzB4MTZlYzQ5El8weDM5Y2Q3NRJfMHgzZDNhNWUSXzB4NGZlOTkxCDB4NDMIMHgxNQxtZXRob2QSZm9ybS1kYXRhEHBvc3RUeXBlCDB4N2YURU5DUllQVElPTghhZXNYCDB4OGESXzB4M2Q0ODNmEl8weDUxNTQ1NhJfMHgyN2Q0MDUSXzB4NWU4MzViEl8weDVjMDY1YRJfMHgxMGZkNmISXzB4MWJiOTljEl8weDMwMzU0MRJfMHgyMTUxYTkSXzB4MjgwOGVmEl8weDRjNGE3ORJfMHgxMGMwY2ISXzB4MzQ2NzI3El8weDRhODM0MRBfMHhmMDk0OBJfMHgyMDlhNDYSXzB4NTcyNzc2El8weDQ3NGI3OBJfMHg1MmQ1YTISXzB4M2U0MTRhEl8weDMxMzIzOBJfMHhhNWYyMzISXzB4MzI5Yzk0El8weDQzOGQzYxJfMHgxMmIxZDYIMHgyNggweDE2CDB4MjgGMHhkCDB4NWYQTm53OUFjT08IMHg1NwgweDNjCDB4NjcIMHg4NggweDQ3CHc3MWYIMHgxNAgweDEyDGRldmljZQpsb2NhbAgweDczCDB4NTUEaWQIMHgzNQR1YQgweDY2BDsgCDB4NDgIMHg2MQgweDVhAikIMHg2MggweDI1CDB4NjMIMHgxZQgweDJkCDB4MWYEbm0IMHg2MAgweDhjCDB4NzcIMHg0OQgweDQyCDB4NGMSdXNlcl9uYW1lEHVzZXJfcHdkEnVzZXJfcHdkMjQvYXBwdG8vdjEvdXNlci9nZXRVc2VySW5mbwgweDc1CDB4MTcIMHg5MBJfMHhjYTMyZTQSXzB4MWZhOGRmEl8weDFkZWIwMxJfMHgzYjc3NWUSXzB4MjMwYzdhEl8weDFjYjhlNBJfMHg0ZGQxZDkSXzB4OWU0ODZjEl8weDNlYmNhZAgweDg1BjB4YggweDNkCDB4NTISXzB4NmEzMzJmEl8weDI1ZmQyNBJfMHgzMzg4YmESXzB4NWY0NmUxEl8weDRkMjgyMBJfMHg0MjQyYmYSXzB4NTM0MTU5El8weGFlOGU3ZBJfMHg0YWExMDASXzB4MmRhY2EwEl8weDRjODRhOBJfMHgyMWQyYzESXzB4NDI1ZGEzEl8weDU2ZDEzMhJfMHg0ZTIxM2ESXzB4NTFhMTM0El8weDFiZWVlNBJfMHgxZDE0YmESXzB4NWFlNzlhEl8weDJiMjJhNxJfMHgyMTg4Y2ISXzB4OThlNGY3El8weDM4ODFhOQgweDJhEl8weDQ4MmM3YxJfMHgyZjRjYmQSXzB4MzIwZWI4El8weDVkY2Q3NxJfMHg0ZmU4YTESXzB4Mjk2MThjEl8weDRmODg3NxJfMHgyMWI4OGESXzB4OTkzMjg3El8weDI0OTE3MhJfMHgxNzA0MjkSXzB4MzljYThhEl8weDFlZjRhNRJfMHg3NWQ3MmYSXzB4YWY5MjkwCDB4MzQIMHg1NggweDI0CG1vbGQIMHg4NA50eXBlX2lkCDB4NzAIMHg3YggweDRhCDB4NTkFe3yLVwgweDJiBTBXOlMIMHgzYQgweDZlBe2LAIoIbGFuZwgweDIxBXRe404IeWVhcghpbml0BWhR6JACbgJ2CDB4MWQIMHgxYggweDdlBZJjj14IMHg0NQYweGEFAGewZQUAZ+1wCDB4N2QFfVnEiwgweDRmDmZpbHRlcnMSXzB4NWVkZjE5BjB4ZhJfMHg0ZGQ5NWQEe30SXzB4NTQ3NDIwEl8weDFkNWNiNRJfMHg0MWEzNDcSXzB4NGI5MzhkEl8weGE4Njc1MhJfMHg1ZWVhMTASXzB4MTNjYjM4El8weDVkZmQxMRJfMHg1MGYxNzQIMHg4OOQBJmFyZWE9e3tleHQuYXJlYX19Jmxhbmc9e3tleHQubGFuZ319JnllYXI9e3tleHQueWVhcn19Jm9yZGVyPXt7ZXh0Lm9yZGVyfGRlZmF1bHQoInRpbWUiKX19JnR5cGVfbmFtZT17e2V4dC5jbGFzc319BmV4dAgweDIzGCZwYWdlU2l6ZT0yMQgweDNlCDB4NDEIMHg3OQ52b2Rfc3ViCHBhZ2UIMHg3NhJwYWdlY291bnQIbGlzdBJfMHg3NGJkODgSXzB4MjZhMmFlEl8weDQ3MDZiYxJfMHgxYTVjNWISXzB4NDExNDFiEl8weDE3NDk4OBJfMHhjMGYzZDISXzB4ZTY1YjgxCDB4MWEIMHg1MyRlbmNvZGVVUklDb21wb25lbnQIMHg1MAgweDg3CDB4NDYCLBB2b2RfeWVhchB2b2RfYXJlYQgweDg5GHZvZF9kaXJlY3RvcgYweDgadm9kX3BsYXlfbGlzdAgweDE5CDB4NmMIdXJscxxoYXNPd25Qcm9wZXJ0eQgweDZkAiMadm9kX3BsYXlfZnJvbQYkJCQYdm9kX3BsYXlfdXJsEl8weDUxOTFkNggweDRiAiQIMHg3MhJfMHg1MTViZDYSXzB4MWZlNzk0El8weDFlYTI1ZBJfMHg1MzQ4OGQSXzB4NGUwNTMzEl8weDM3YzM1OBJfMHg1OTI3ZTcSXzB4MmJjMWU2El8weDQ5YTExYxJfMHg1NTc0NWQGMHhjCDB4MTEIMHg0NBBwbGF5X3VybApsYWJlbAgweDRlCDB4MTgQcmVkaXJlY3QIMHg0ZAgweDFjBjB4NxJfMHg0NjZmYTESXzB4NDQyODE1El8weDQ3NjQzOBJfMHgxZjk1ZTISXzB4M2VhMzU1El8weDUzNjQ2MxJfMHgzNmE2YTASXzB4M2MyNGU4CDB4MTASXzB4MWRlNjUzEl8weDFmNjg5MQgweDM5AiASXzB4MTNhNWY1El8weDI0MTM1NxJfMHgxMDk5OWEIMHgyMBJfMHg4OTUxYjQSXzB4YTliY2M2El8weDU3Nzg1NhJfMHhiZGMxNDQSXzB4MjE0OTQ5El8weDIxZGFlZBJfMHg1MGQxMjYIMHgzMwQvLwxodHRwczoIMHg3NAgweDM2CDB4MzIIMHg4ZA5mb3JFYWNoDGhlYWRlchJfMHhjZGYyOGISXzB4ZjkwNjBhEl8weDQ1N2E1NBJfMHg0Zjk1Y2ESXzB4MmEwYjllEl8weDQ2NDNiNhJfMHgzY2U3MzMSXzB4MWRmY2NhDGh1YXdlaQpicmFuZAgweDZhCDB4MjIIMHg3YRJfMHg0NTVhZjISXzB4MThhOTQwCDB4NTESXzB4MTFmOGRkCDB4NmISXzB4NDk1YjY1El8weDQ1YmQyZAgweDViCDB4NWMIMHgyORhDb250ZW50LVR5cGUGaW1nCGhvbWUOaG9tZVZvZBBjYXRlZ29yeQxkZXRhaWwIcGxheQxzZWFyY2gPpAMBpgMBAC2oAwAFAKoDAAGsAwACrgMAA7ADAASyAwAOAAYBoAEAAAAgLhfBDQCqAwAMrAMBDK4DAgywAwMMsgMEDLQDAA22AwENuAMCCboDAwm8AwQJvgMFCcADBgnCAwcJxAMICcYDCQnIAwoNygMLDcwDDA3OAw0N0AMODdIDDw3UAxAN1gMRDdgDEgHaAxMB3AMUAd4DFQHgAxYB4gMXAeQDGAHmAxkB6AMaCeoDGwnsAxwB7gMdAfADHgHyAx8B9AMgAfYDIQ34AyIB+gMjAfwDJAH+AyUBgAQmAYIEJwGoAygBCOhhvgRfFwC+BV8ZAL4GXxoAvgdfGwC+CF8cAL4JXx0AvgpfHgC+C18hAL4MXyIAvg1fIwC+Dl8kAL4PXyUAvhBfJwC+EV8oAL4SXykAvhNfKgC+FF8rAL4VXywAvhZfLQApBAIBAAAEQgAAAAQDAQAABAQBAAAEBQEAAAQGAQAABAcBAAAECAEAAAQJAQAABAoBAAAECwEAAAR6AAAABAwBAAAEDQEAAAQOAQAABA8BAAAEMAAAAAQQAQAABEEAAAAEEQEAAAQSAQAABBMBAAAEFAEAAAQVAQAABBYBAAAEFwEAAAQYAQAABBkBAAAEGgEAAAQbAQAABBwBAAAEHQEAACYgAAQeAQAATCAAAIAEHwEAAEwhAACABCABAABMIgAAgAQhAQAATCMAAIAEIgEAAEwkAACABCMBAABMJQAAgAQkAQAATCYAAIAEJQEAAEwnAACABCYBAABMKAAAgAQnAQAATCkAAIAEKAEAAEwqAACABCkBAABMKwAAgAQqAQAATCwAAIAEKwEAAEwtAACABCwBAABMLgAAgAQtAQAATC8AAIAELgEAAEwwAACABFsAAABMMQAAgAQvAQAATDIAAIAEMAEAAEwzAACABDEBAABMNAAAgAQyAQAATDUAAIAEMwEAAEw2AACABDQBAABMNwAAgAQ1AQAATDgAAIAENgEAAEw5AACABDcBAABMOgAAgARAAAAATDsAAIAEOAEAAEw8AACABDkBAABMPQAAgAQ6AQAATD4AAIAEOwEAAEw/AACABDwBAABMQAAAgAQ9AQAATEEAAIAEPgEAAExCAACABD8BAABMQwAAgARAAQAATEQAAIAEQQEAAExFAACABEIBAABMRgAAgARDAQAATEcAAIAERAEAAExIAACABEUBAABMSQAAgARGAQAATEoAAIAERwEAAExLAACABEgBAABMTAAAgARJAQAATE0AAIAEHgAAAExOAACABEoBAABMTwAAgARLAQAATFAAAIAETAEAAExRAACABE0BAABMUgAAgAROAQAATFMAAIAETwEAAExUAACABFABAABMVQAAgARRAQAATFYAAIAEUgEAAExXAACABFMBAABMWAAAgARUAQAATFkAAIAEVQEAAExaAACABFYBAABMWwAAgARXAQAATFwAAIAEWAEAAExdAACABFkBAABMXgAAgARaAQAATF8AAIAEWwEAAExgAACABFwBAABMYQAAgARdAQAATGIAAIAEXgEAAExjAACABF8BAABMZAAAgARgAQAATGUAAIAEYQEAAExmAACABGIBAABMZwAAgARjAQAATGgAAIAEZAEAAExpAACABGUBAABMagAAgARmAQAATGsAAIAEZwEAAExsAACABGgBAABMbQAAgARpAQAATG4AAIAEagEAAExvAACABGsBAABMcAAAgARsAQAATHEAAIAEbQEAAExyAACABG4BAABMcwAAgARvAQAATHQAAIAEcAEAAEx1AACABHEBAABMdgAAgARdAAAATHcAAIAEcgEAAEx4AACABHMBAABMeQAA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
|
1
0130/道长JS/cat/猫南瓜.js
Normal file
1
0130/道长JS/cat/猫南瓜.js
Normal file
@ -0,0 +1 @@
|
||||
//bbQ0FUT1DUARRuZ19vcGVuLmpzLGFzc2V0czovL2pzL2xpYi9jYXQuanMcX19qc0V2YWxSZXR1cm4MQ3J5cHRvDGppbmphMgJfBmtleQhIT1NUDnNpdGVLZXkQc2l0ZVR5cGUSTU9CSUxFX1VBDnJlcXVlc3QIaW5pdAhob21lDmhvbWVWb2QQY2F0ZWdvcnkMZGV0YWlsCHBsYXkMc2VhcmNoGHN0cmlwSHRtbFRhZxpmb3JtYXRQbGF5VXJsGmRlY29kZVVuaWNvZGUJV1PcdHFfxok0aHR0cDovL3lzLmNoYW5nbWVuZ3l1bi5jb20Yb2todHRwLzQuNi4wDHJlcVVybAJ0BnJlcw5nZXRUaW1lBnJlcQxtZXRob2QKMS4wLjYYdmVyc2lvbl9uYW1lGHZlcnNpb25fY29kZSBjb20uYXBwLm5hbmd1YXR2GHBhY2thZ2VfbmFtZQZNRDVCYzQzMWVhNTQyY2VlOTY3OSN1QkZzemRFTTBvTDBKUm5AFnRvTG93ZXJDYXNlCHNpZ24gYzQzMWVhNTQyY2VlOTY3OQhpbWVpFHRpbWVNaWxsaXMUVXNlci1BZ2VudA5oZWFkZXJzDmNvbnRlbnQGY2ZnCHNrZXkKc3R5cGUMZmlsdGVyCGRhdGEOY2xhc3NlcxJmaWx0ZXJPYmoMZmlsWWVyDGZpbFR0bApmaWxCeQpwYXJzZTIvYXBpLnBocC9wcm92aWRlL2hvbWVfbmF2Bb58CZAIcHVzaARpZA50eXBlX2lkEnR5cGVfbmFtZQV7fItXBWhR6JACbgJ2B/1Wp05nUgcvbvBTZ1IIYXJlYQUwVzpTBYVRMFcJmZkvbjBXOlMJ8FN+bjBXOlMHqFJcT0dyB5xVZ1JHcgcxcsVgR3IH0Xl7XkdyB1BgFmBHcgdnUsVgR3IHGGKJTkdyB8pgmmBHcgVOU+2LBY5//VYFJ2sybQXpl/1WBeVlLGcF8Gz9VgVwU6ZeBXZRg1sH/VanTitvBydrjn8rbwflZemXK28HL27wUytvCS1O/VYnWUaWBSdrjn8FJ1lGlgUvbvBTBeVl6ZcH5WXpl2dSBydrjn9nUgd3bRZZZ1IFjn9nUgXxgv1WB7BloFJhVwV2UdZOCHllYXIFdF79TgkxADAAdF7jTgkwADAAdF7jTgk5ADAAdF7jTgk4ADAAdF7jTgp0b3RhbAW2cgFgBd6PfY8FjFvTfgRieQWSY49eB+1wrWScaQd9WcSLnGkHsGUKTr9+EnN0cmluZ2lmeQZtYXAOZmlsdGVycwZjbHMCaQx2aWRlb3OoAS9hcGkucGhwL3Byb3ZpZGUvdm9kX3Jhbms/YXBwPXlseXMmc29ydF90eXBlPW1vbnRoJmltZWk9YzQzMWVhNTQyY2VlOTY3OSZpZD0yJnBhZ2U9MQ5mb3JFYWNoCGxpc3QEaXQMdm9kX2lkEHZvZF9uYW1lBmltZw52b2RfcGljDnJlbWFya3MWdm9kX3JlbWFya3MGdGlkBHBnDGV4dGVuZApwZ0Noaw5wZ0NvdW50TC9hcGkucGhwL3Byb3ZpZGUvdm9kX2xpc3Q/YXBwPXlseXMmaWQ9DCZwYWdlPS4maW1laT1jNDMxZWE1NDJjZWU5Njc5JrYBYXJlYT17e2V4dC5hcmVhfX0meWVhcj17e2V4dC55ZWFyfX0mdHlwZT17e2V4dC5jbGFzc319JnRvdGFsPXt7ZXh0LnRvdGFsfX0mb3JkZXI9e3tleHQuYnl9fQZleHQQcGFyc2VJbnQGbXNnCHBhZ2UScGFnZWNvdW50CmxpbWl0BnZvZBBlcGlzb2RlcxBwbGF5bGlzdAh1cmxzGHZvZF9wbGF5X3VybHwvYXBpLnBocC9wcm92aWRlL3ZvZF9kZXRhaWw/YXBwPXlseXMmaW1laT1jNDMxZWE1NDJjZWU5Njc5JmlkPQh0eXBlEHZvZF95ZWFyC/RmsGXzgToAIAAPIAAvACAAxIsGUjoAIAAKc2NvcmUIaW5mbxZ2b2RfY29udGVudBZwbGF5ZXJfaW5mbwhrZXlzBiQkJBp2b2RfcGxheV9mcm9tEHBsYXl1cmxzFHZpZGVvX2luZm8OcGxheXVybAhzaG93CHRyaW0caGFzT3duUHJvcGVydHkCJAZ1cmwCIwhmbGFnCm1qdXJsCmpEYXRhAmUcTGF2Zi81OC4xMi4xMDAUdXNlci1hZ2VudA5pbmRleE9mCG0zdTgIdXJsPQxoZWFkZXICLA5jb25zb2xlCmRlYnVnFm1qdXJsID09PT4gGGpEYXRhMSA9PT0+IBhqRGF0YTIgPT09PiAIdGVzdBhqRGF0YTMgPT09PiAYakRhdGE0ID09PT4gGGpEYXRhNSA9PT0+IAR3ZApxdWlja3AvYXBpLnBocC9wcm92aWRlL3NlYXJjaF9yZXN1bHRfbW9yZT9hcHA9eWx5cyZ2aWRlb19uYW1lPVwmcGFnZVNpemU9MjAmdGlkPTAmaW1laT1jNDMxZWE1NDJjZWU5Njc5JnBhZ2U9FHZpZGVvX25hbWUQcWluZ3hpZHUCLwZzcmMOcmVwbGFjZQIgFHJlcGxhY2VBbGwGc3RyAiUQdW5lc2NhcGUPpAMBpgMBABOoAwADAKoDAAGsAwACrgMADgAGAaABAAAAARQMXwCqAwAMrAMBDK4DAgywAwAJsgMBCbQDAgm2AwMJuAMECboDBQG8AwYBvgMHAcADCAHCAwkBxAMKAcYDCwHIAwwBygMNAcwDDgHOAw8BqAMQAQjoPr4AXwgAvgFfCQC+Al8KAL4DXwsAvgRfDAC+BV8NAL4GXw4AvgdfDwC+CF8QAL4JXxEAvgpfEgC+C18TACkE6AAAAOIE6QAAAF8EAL9fBQCzXwYABOoAAABfBwAppAMBDAEAQAYhKxcXAAjsAw5iBgG6AwECAQgCAaEBA9YDAAEA2AMBACDaAwEBIKoDAAy4AwcIYQEAYQAAOJkAAAARIQAAQu4AAAAkAABCNwAAACQAAMc47wAAAM8LBEEAAABM8AAAAAsE8QAAAEzyAAAAvQBM8wAAAAT0AAAATPUAAABlAABC9gAAAAT3AAAAYgAAnSQBAEI3AAAAJAAAQvgAAAAkAABM+QAAAAT6AAAATPsAAABiAABM/AAAAGUBAEz9AAAATP4AAADui8hiAQBB/wAAAC6kAwkOIYUmNQg1JjXQNSsrHBMHAjYOYgYBvAMBAAECAgAYAYAEAAEAtAMFCLYDBgjPQQEBAAARZgAADs9BAgEAABFmAQAOBi6kAxsDAzo6DmIGAb4DAQcBEAMTuxIIhgQAAQCIBAEAIIoEAQEgsAMCBzCMBAECYI4EAQRgkAQBBWCSBAEGYLoDCACyAwQIrgMCDGEGAGEFAGEEAGEDAGEBAGEAADiYAAAAQgoBAADbZQEABAsBAACd7YskAQDHJgAAyGECAGIAAHzqRcliAABiAgBHQTYAAAAEDAEAAKroMGIBAEINAQAAC2IAAGICAEdBDgEAAEwPAQAAYgAAYgIAR0E2AAAATBABAAAkAQAOf+i6Dg4LCwQeAAAATNgAAAAEEQEAAEw2AAAACwQSAQAATBMBAAAEEQEAAEwUAQAACwQVAQAATBMBAAAEFQEAAEwUAQAACwQWAQAATBMBAAAEFgEAAEwUAQAAJgMATEAAAAALBBcBAABM2AAAAAQYAQAATDYAAAALBBIBAABMEwEAAAQYAQAATBQBAAALBBkBAABMEwEAAAQZAQAATBQBAAALBBoBAABMEwEAAAQaAQAATBQBAAALBBsBAABMEwEAAAQbAQAATBQBAAAmBABMQAAAACYCAEwCAACACwQeAAAATNgAAAAEEQEAAEw2AAAACwQSAQAATBMBAAAEEQEAAEwUAQAACwQcAQAATBMBAAAEHAEAAEwUAQAACwQdAQAATBMBAAAEHQEAAEwUAQAACwQeAQAATBMBAAAEHgEAAEwUAQAACwQfAQAATBMBAAAEHwEAAEwUAQAACwQgAQAATBMBAAAEIAEAAEwUAQAACwQhAQAATBMBAAAEIQEAAEwUAQAACwQiAQAATBMBAAAEIgEAAEwUAQAACwQjAQAATBMBAAAEIwEAAEwUAQAAJgkATEAAAAALBBcBAABM2AAAAAQYAQAATDYAAAALBBIBAABMEwEAAAQYAQAATBQBAAALBCQBAABMEwEAAAQkAQAATBQBAAALBBoBAABMEwEAAAQaAQAATBQBAAALBCUBAABMEwEAAAQlAQAATBQBAAALBCYBAABMEwEAAAQmAQAATBQBAAALBCcBAABMEwEAAAQnAQAATBQBAAALBCgBAABMEwEAAAQoAQAATBQBAAALBBsBAABMEwEAAAQbAQAATBQBAAALBCkBAABMEwEAAAQpAQAATBQBAAALBBsBAABMEwEAAAQbAQAATBQBAAALBCoBAABMEwEAAAQqAQAATBQBAAALBCsBAABMEwEAAAQrAQAATBQBAAAmDABMQAAAACYCAEwBAACACwQeAAAATNgAAAAEEQEAAEw2AAAACwQSAQAATBMBAAAEEQEAAEwUAQAACwQsAQAATBMBAAAELAEAAEwUAQAACwQtAQAATBMBAAAELQEAAEwUAQAACwQuAQAATBMBAAAELgEAAEwUAQAACwQvAQAATBMBAAAELwEAAEwUAQAAJgUATEAAAAALBBcBAABM2AAAAAQYAQAATDYAAAALBBIBAABMEwEAAAQYAQAATBQBAAALBDABAABMEwEAAAQwAQAATBQBAAALBCgBAABMEwEAAAQo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
|
135
0130/道长JS/cat/猫短视频.js
Normal file
135
0130/道长JS/cat/猫短视频.js
Normal file
@ -0,0 +1,135 @@
|
||||
// 搜索滑块验证
|
||||
import { load, _ } from 'assets://js/lib/cat.js';
|
||||
|
||||
let key = '短视频';
|
||||
let HOST = 'http://www.sharenice.net';
|
||||
let siteKey = '';
|
||||
let siteType = 0;
|
||||
let PC_UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36';
|
||||
|
||||
async function request(reqUrl, agentSp) {
|
||||
let res = await req(reqUrl, {
|
||||
method: 'get',
|
||||
headers: {
|
||||
'User-Agent': agentSp || PC_UA,
|
||||
},
|
||||
});
|
||||
return res.content;
|
||||
}
|
||||
|
||||
async function init(cfg) {
|
||||
siteKey = cfg.skey;
|
||||
siteType = cfg.stype;
|
||||
}
|
||||
|
||||
function clsjoin(cls) {
|
||||
_.each(cls, (s) => {
|
||||
let typeId = s.attribs['href'];
|
||||
typeId = typeId.substring(typeId.lastIndexOf('t/') + 2);
|
||||
classes.push({
|
||||
type_id: typeId,
|
||||
type_name: s.children[0].data,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
let classes = [];
|
||||
async function home(filter) {
|
||||
let filterObj = {};
|
||||
let html = await request(HOST);
|
||||
let $ = load(html);
|
||||
let series = $('div.nav > ul > li > a[href*=net/]');
|
||||
let tag = $('div.hot-tags-list > a[href*=net]');
|
||||
clsjoin(series);
|
||||
clsjoin(tag);
|
||||
return JSON.stringify({
|
||||
class: classes,
|
||||
filters: filterObj,
|
||||
});
|
||||
}
|
||||
|
||||
async function homeVod() {
|
||||
let link = HOST + '/t-576O5aWz';
|
||||
let html = await request(link);
|
||||
let $ = load(html);
|
||||
let items = $('div.item-box ul li');
|
||||
let videos = _.map(items, (item) => {
|
||||
let a = $(item).find('a:first')[0];
|
||||
let img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
return JSON.stringify({
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function category(tid, pg, filter, extend) {
|
||||
if (pg <= 0 || typeof(pg) == 'undefined') pg = 1;
|
||||
let link = HOST + '/' + tid + '?page=' + pg;
|
||||
let html = await request(link);
|
||||
let $ = load(html);
|
||||
let items = $('div.item-box ul li');
|
||||
let videos = _.map(items, (item) => {
|
||||
let a = $(item).find('a:first')[0];
|
||||
let img = $(item).find('img:first')[0];
|
||||
return {
|
||||
vod_id: a.attribs.href,
|
||||
vod_name: a.attribs.title,
|
||||
vod_pic: img.attribs['data-original'],
|
||||
vod_remarks: '',
|
||||
};
|
||||
});
|
||||
let hasMore = $('ul.pagination > li > a:contains(»)').length > 0;
|
||||
let pgCount = hasMore ? parseInt(pg) + 1 : parseInt(pg);
|
||||
return JSON.stringify({
|
||||
page: parseInt(pg),
|
||||
pagecount: pgCount,
|
||||
limit: 16,
|
||||
total: 16 * pgCount,
|
||||
list: videos,
|
||||
});
|
||||
}
|
||||
|
||||
async function detail(id) {
|
||||
let vod = {
|
||||
vod_id: id,
|
||||
vod_remarks: '',
|
||||
};
|
||||
let playlist = ['观看视频' + '$' + id];
|
||||
vod.vod_play_from = '在线';
|
||||
vod.vod_play_url = playlist.join('#');
|
||||
return JSON.stringify({
|
||||
list: [vod],
|
||||
});
|
||||
}
|
||||
|
||||
async function play(flag, id, flags) {
|
||||
let html = await request(id);
|
||||
let $ = load(html);
|
||||
let playUrl = $('div.video-play-box').find('video:first')[0].attribs.src;
|
||||
return JSON.stringify({
|
||||
parse: 1,
|
||||
url: playUrl,
|
||||
});
|
||||
}
|
||||
|
||||
async function search(wd, quick, pg) {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
export function __jsEvalReturn() {
|
||||
return {
|
||||
init: init,
|
||||
home: home,
|
||||
homeVod: homeVod,
|
||||
category: category,
|
||||
detail: detail,
|
||||
play: play,
|
||||
search: search,
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user