var rule = { 类型:'影视', title:'全民追剧', desc:'不告诉你', host:'https://jenzg.cn', url: '/index.php/vod/showfyfilter.html[/index.php/vod/showfyclass.html]', searchUrl: '/index.php/vod/search/page/fypage/wd/**.html', searchable:1,quickSearch:1,double:false,timeout:5000,play_parse:true,filterable:1,invalid:true, class_name:'电影&电视剧&综艺&动漫&短剧', class_url:'/id/61&/id/79&/id/88&/id/93&/id/99', filter_url:'{{fl.area}}{{fl.class}}{{fl.cateId}}/page/fypage{{fl.year}}', filter_def:{'/id/61':{cateId:'/id/61'},'/id/79':{cateId:'/id/79'},'/id/88':{cateId:'/id/88'},'/id/93':{cateId:'/id/93'},'/id/99':{cateId:'/id/99'}}, 预处理: async () => {return []}, 推荐: async function (tid, pg, filter, extend) { let homeFn = rule.一级.bind(this); return await homeFn(); }, 一级: async function (tid, pg, filter, extend) { let {input, pdfa, pdfh, pd} = this; let html = await request(input); let d = []; let data = pdfa(html, '.module-items .module-item'); data.forEach((it) => { d.push({ title: pdfh(it, 'a&&title'), pic_url: pd(it, 'img&&data-src'), desc: pdfh(it, '.module-item-text&&Text'), url: pd(it, 'a&&href'), }) }); return setResult(d) }, 二级: async function (ids) { let {input, pdfa, pdfh, pd} = this; let html = await request(input); let VOD = {}; VOD.vod_name = pdfh(html, 'h1&&Text');//名称 VOD.vod_actor = pdfh(html, '.video-info-items:eq(1)&&Text');//演员 VOD.vod_director = pdfh(html, '.video-info-items:eq(0)&&Text');//导演 VOD.vod_remarks = pdfh(html, '');//备注 VOD.vod_status = pdfh(html, '');//状态 VOD.vod_content = pdfh(html, '.video-info-content&&Text');//简介 let playlist = pdfa(html, '.module-list'); let tabs = pdfa(html, '.module-tab&&.module-tab-item.tab-item'); let playmap = {}; tabs.map((item, i) => { const form = pdfh(item, 'span&&Text'); const list = playlist[i]; const a = pdfa(list, 'body&&a:not(:contains(排序))'); a.map((it) => { let title = pdfh(it, 'a&&Text'); let urls = pd(it, 'a&&href', input); if (!playmap.hasOwnProperty(form)) { playmap[form] = []; } playmap[form].push(title + "$" + urls); }); }); VOD.vod_play_from = Object.keys(playmap).join('$$$'); const urls = Object.values(playmap); const playUrls = urls.map((urllist) => { return urllist.join("#"); }); VOD.vod_play_url = playUrls.join('$$$'); return VOD; }, 搜索: async function (wd, quick, pg) { let {input, pdfa, pdfh, pd} = this; let html = await request(input); let d = []; let data = pdfa(html, '.module-items .module-search-item'); data.forEach((it) => { d.push({ title: pdfh(it, 'a&&title'), pic_url: pd(it, 'img&&data-src'), desc: pdfh(it, '.video-serial&&Text'), url: pd(it, 'a&&href'), content: pdfh(it, '.video-info-aux&&Text'), }) }); return setResult(d); }, lazy: async function (flag, id, flags) { let {input, pdfa, pdfh, pd} = this; let html = await request(input); html = JSON.parse(html.match(/r player_.*?=(.*?)