From a297c187f414454d62ae363c4fd0303a486bfb41 Mon Sep 17 00:00:00 2001 From: xiaoliu <18409283+ls125781003@users.noreply.github.com> Date: Wed, 24 Jul 2024 20:24:13 +0800 Subject: [PATCH] Add files via upload --- drpy_t3/drpy_libs/模板.js | 274 +++++++++++++++++++++++--------------- 1 file changed, 166 insertions(+), 108 deletions(-) diff --git a/drpy_t3/drpy_libs/模板.js b/drpy_t3/drpy_libs/模板.js index 1eea2d8..c499f9d 100644 --- a/drpy_t3/drpy_libs/模板.js +++ b/drpy_t3/drpy_libs/模板.js @@ -1,4 +1,4 @@ -if (typeof Object.assign != 'function') { +if (typeof Object.assign !== 'function') { Object.assign = function () { let target = arguments[0]; for (let i = 1; i < arguments.length; i++) { @@ -12,9 +12,76 @@ if (typeof Object.assign != 'function') { return target; }; } +// @ts-ignore +if (typeof ($js) === 'undefined' || typeof ($js) !== 'object') { + globalThis.$js = { + toString(func) { + let strfun = func.toString(); + return strfun.replace(/^\(\)(\s+)?=>(\s+)?\{/, 'js:').replace(/\}$/, ''); + }, + }; +} +// 通用免嗅探播放 +// @ts-ignore +let common_lazy = $js.toString(() => { + // @ts-ignore + let html = request(input); + let hconf = html.match(/r player_.*?=(.*?) { + // @ts-ignore + input = {parse: 1, url: input, js: ''}; +}); +// 采集站播放 +// @ts-ignore +let cj_lazy = $js.toString(() => { + // @ts-ignore + if (/\.(m3u8|mp4)/.test(input)) { + // @ts-ignore + input = {parse: 0, url: input}; + } else { + // @ts-ignore + if (rule.parse_url.startsWith('json:')) { + // @ts-ignore + let purl = rule.parse_url.replace('json:', '') + input; + // @ts-ignore + let html = request(purl); + let json = JSON.parse(html); + if (json.url) { + // @ts-ignore + input = {parse: 0, url: json.url}; + } + } else { + // @ts-ignore + input = rule.parse_url + input; + } + } +}); function getMubans() { - var mubanDict = { // 模板字典 + const mubanDict = { // 模板字典 mx: { title: '', host: '', @@ -28,15 +95,15 @@ function getMubans() { 'User-Agent': 'MOBILE_UA', }, play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: '.cbox_list;*;*;*;*;*', double: true, + 推荐: '.cbox_list;*;*;*;*;*', 一级: 'ul.vodlist li;a&&title;a&&data-original;.pic_text&&Text;a&&href', 二级: { - title: 'h2&&Text;.detail_list&&ul:eq(1)&&li&&a:eq(2)&&Text', + title: 'h2&&Text;.content_detail:eq(1)&&li&&a:eq(2)&&Text', img: '.vodlist_thumb&&data-original', - desc: '.content_detail&&li:eq(1)&&Text;.detail_list&&ul:eq(1)&&li&&a&&Text;.detail_list&&ul:eq(1)&&li&&a:eq(1)&&Text;.detail_list&&ul:eq(1)&&li:eq(2)&&Text;.detail_list&&ul:eq(1)&&li:eq(3)&&Text', + desc: '.content_detail:eq(1)&&li:eq(1)&&Text;.content_detail:eq(1)&&li&&a&&Text;.content_detail:eq(1)&&li&&a:eq(1)&&Text;.content_detail:eq(1)&&li:eq(2)&&Text;.content_detail:eq(1)&&li:eq(3)&&Text', content: '.content_desc&&span&&Text', tabs: '.play_source_tab&&a', lists: '.content_playlist:eq(#id) li', @@ -54,21 +121,21 @@ function getMubans() { headers: {//网站的请求头,完整支持所有的,常带ua和cookies 'User-Agent': 'MOBILE_UA', // "Cookie": "searchneed=ok" }, - class_parse: '.navbar-items li:gt(2):lt(8);a&&Text;a&&href;/(\\d+).html', + class_parse: '.navbar-items li:gt(0):lt(10);a&&Text;a&&href;/(\\d+)', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: '.tab-list.active;a.module-poster-item.module-item;.module-poster-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: '.tab-list.active;a.module-poster-item.module-item;.module-poster-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href', 一级: 'body a.module-poster-item.module-item;a&&title;.lazyload&&data-original;.module-item-note&&Text;a&&href', 二级: { - "title": "h1&&Text;.module-info-tag&&Text", - "img": ".lazyload&&data-original", - "desc": ".module-info-item:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(3)&&Text", - "content": ".module-info-introduction&&Text", - "tabs": ".module-tab-item", - "lists": ".module-play-list:eq(#id) a", - "tab_text": "div--small&&Text", + title: 'h1&&Text;.module-info-tag-link:eq(-1)&&Text', + img: '.lazyload&&data-original||data-src||src', + desc: '.module-info-item:eq(-2)&&Text;.module-info-tag-link&&Text;.module-info-tag-link:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(1)&&Text', + content: '.module-info-introduction&&Text', + tabs: '.module-tab-item', + lists: '.module-play-list:eq(#id) a', + tab_text: 'div--small&&Text', }, 搜索: 'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text', }, mxone5: { @@ -79,21 +146,21 @@ function getMubans() { searchable: 2,//是否启用全局搜索, quickSearch: 0,//是否启用快速搜索, filterable: 0,//是否启用分类筛选, - class_parse: '.nav-menu-items&&li;a&&Text;a&&href;.*/(.*?).html', + class_parse: '.nav-menu-items&&li;a&&Text;a&&href;.*/(.*?)\.html', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: '.module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: '.module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', 一级: '.module-items .module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', 二级: { - "title": "h1&&Text;.tag-link&&Text", - "img": ".module-item-pic&&img&&data-src", - "desc": ".video-info-items:eq(0)&&Text;.video-info-items:eq(1)&&Text;.video-info-items:eq(2)&&Text;.video-info-items:eq(3)&&Text", - "content": ".vod_content&&Text", - "tabs": ".module-tab-item", - "lists": ".module-player-list:eq(#id)&&.scroll-content&&a", - "tab_text": "div--small&&Text", + title: 'h1&&Text;.tag-link&&Text', + img: '.module-item-pic&&img&&data-src', + desc: '.video-info-items:eq(3)&&Text;.tag-link:eq(2)&&Text;.tag-link:eq(1)&&Text;.video-info-items:eq(1)&&Text;.video-info-items:eq(0)&&Text', + content: '.vod_content&&Text', + tabs: '.module-tab-item', + lists: '.module-player-list:eq(#id)&&.scroll-content&&a', + tab_text: 'div--small&&Text', }, 搜索: '.module-items .module-search-item;a&&title;img&&data-src;.video-serial&&Text;a&&href', }, 首图: { @@ -107,22 +174,23 @@ function getMubans() { headers: {//网站的请求头,完整支持所有的,常带ua和cookies 'User-Agent': 'MOBILE_UA', // "Cookie": "searchneed=ok" }, - class_parse: '.myui-header__menu li.hidden-sm:gt(0):lt(5);a&&Text;a&&href;/(\\d+).html', + class_parse: '.myui-header__menu li.hidden-sm:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: 'ul.myui-vodlist.clearfix;li;a&&title;a&&data-original;.pic-text&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: 'ul.myui-vodlist.clearfix;li;a&&title;a&&data-original;.pic-text&&Text;a&&href', 一级: '.myui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href', 二级: { - "title": ".myui-content__detail .title&&Text;.myui-content__detail p:eq(-2)&&Text", - "img": ".myui-content__thumb .lazyload&&data-original", - "desc": ".myui-content__detail p:eq(0)&&Text;.myui-content__detail p:eq(1)&&Text;.myui-content__detail p:eq(2)&&Text", - "content": ".content&&Text", - "tabs": ".nav-tabs:eq(0) li", - "lists": ".myui-content__list:eq(#id) li" + title: '.myui-content__detail .title--span&&Text;.myui-content__detail p.data:eq(3)&&Text', + img: '.myui-content__thumb .lazyload&&data-original', + desc: '.myui-content__detail p.otherbox&&Text;.year&&Text;.myui-content__detail p.data:eq(4)&&Text;.myui-content__detail p.data:eq(2)&&Text;.myui-content__detail p.data:eq(0)&&Text', + content: '.content&&Text', + tabs: '.myui-panel__head&&li', + // tabs: '.nav-tabs&&li', + lists: '.myui-content__list:eq(#id) li', }, - 搜索: '#searchList li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + 搜索: '#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text', }, 首图2: { title: '', host: '', @@ -133,25 +201,26 @@ function getMubans() { filterable: 0,//是否启用分类筛选, headers: { 'User-Agent': 'UC_UA', // "Cookie": "" - }, // class_parse:'.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html', + }, class_parse: '.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href', 一级: '.stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href', 二级: { - "title": ".stui-content__detail .title&&Text;.stui-content__detail p:eq(-2)&&Text", - "img": ".stui-content__thumb .lazyload&&data-original", - "desc": ".stui-content__detail p:eq(0)&&Text;.stui-content__detail p:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text", - "content": ".detail&&Text", - "tabs": ".stui-vodlist__head h3", - "lists": ".stui-content__playlist:eq(#id) li" + title: '.stui-content__detail .title&&Text;.stui-content__detail&&p:eq(-2)&&a&&Text', + title1: '.stui-content__detail .title&&Text;.stui-content__detail&&p&&Text', + img: '.stui-content__thumb .lazyload&&data-original', + desc: '.stui-content__detail p&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(2)&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text;.stui-content__detail p:eq(1)&&Text', + desc1: '.stui-content__detail p:eq(4)&&Text;;;.stui-content__detail p:eq(1)&&Text', + content: '.detail&&Text', + tabs: '.stui-pannel__head h3', + tabs1: '.stui-vodlist__head h3', + lists: '.stui-content__playlist:eq(#id) li', }, - 搜索: 'ul.stui-vodlist__media:eq(0),ul.stui-vodlist:eq(0),#searchList li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', - 搜索1: 'ul.stui-vodlist&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', - 搜索2: 'ul.stui-vodlist__media&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + 搜索: 'ul.stui-vodlist__media,ul.stui-vodlist,#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text', }, 默认: { title: '', host: '', @@ -159,7 +228,7 @@ function getMubans() { searchUrl: '', searchable: 2, quickSearch: 0, - filterable: 1, + filterable: 0, filter: '', filter_url: '', filter_def: {}, @@ -170,7 +239,7 @@ function getMubans() { class_parse: '#side-menu li;a&&Text;a&&href;/(.*?)\.html', cate_exclude: '', play_parse: true, - lazy: `js:input = {parse: 1, url: input, js: ''}`, + lazy: def_lazy, double: true, 推荐: '列表1;列表2;标题;图片;描述;链接;详情', 一级: '列表;标题;图片;描述;链接;详情', @@ -183,7 +252,7 @@ function getMubans() { lists: 'xx:eq(#id)&&a', tab_text: 'body&&Text', list_text: 'body&&Text', - list_url: 'a&&href' + list_url: 'a&&href', }, 搜索: '列表;标题;图片;描述;链接;详情', }, vfed: { @@ -196,21 +265,21 @@ function getMubans() { filterable: 0,//是否启用分类筛选, headers: { 'User-Agent': 'UC_UA', - }, // class_parse:'.fed-pops-navbar&&ul.fed-part-rows&&a.fed-part-eone:gt(0):lt(5);a&&Text;a&&href;.*/(.*?).html', + }, class_parse: '.fed-pops-navbar&&ul.fed-part-rows&&a;a&&Text;a&&href;.*/(.*?).html', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: 'ul.fed-list-info.fed-part-rows;li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: 'ul.fed-list-info.fed-part-rows;li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href', 一级: '.fed-list-info&&li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href', 二级: { - "title": "h1.fed-part-eone&&Text;.fed-deta-content&&.fed-part-rows&&li&&Text", - "img": ".fed-list-info&&a&&data-original", - "desc": ".fed-deta-content&&.fed-part-rows&&li:eq(1)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(2)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(3)&&Text", - "content": ".fed-part-esan&&Text", - "tabs": ".fed-drop-boxs&&.fed-part-rows&&li", - "lists": ".fed-play-item:eq(#id)&&ul:eq(1)&&li" + title: 'h1.fed-part-eone&&Text;.fed-deta-content&&.fed-part-rows&&li&&Text', + img: '.fed-list-info&&a&&data-original', + desc: '.fed-deta-content&&.fed-part-rows&&li:eq(1)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(2)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(3)&&Text', + content: '.fed-part-esan&&Text', + tabs: '.fed-drop-boxs&&.fed-part-rows&&li', + lists: '.fed-play-item:eq(#id)&&ul:eq(1)&&li', }, 搜索: '.fed-deta-info;h1&&Text;.lazyload&&data-original;.fed-list-remarks&&Text;a&&href;.fed-deta-content&&Text', }, 海螺3: { @@ -219,24 +288,25 @@ function getMubans() { searchUrl: '/v_search/**----------fypage---.html', url: '/vod_____show/fyclass--------fypage---.html', headers: { - 'User-Agent': 'MOBILE_UA' + 'User-Agent': 'MOBILE_UA', }, timeout: 5000, class_parse: 'body&&.hl-nav li:gt(0);a&&Text;a&&href;.*/(.*?).html', cate_exclude: '明星|专题|最新|排行', limit: 40, play_parse: true, - lazy: '', - 推荐: '.hl-vod-list;li;a&&title;a&&data-original;.remarks&&Text;a&&href', + lazy: common_lazy, double: true, + 推荐: '.hl-vod-list;li;a&&title;a&&data-original;.remarks&&Text;a&&href', 一级: '.hl-vod-list&&.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href', 二级: { - "title": ".hl-infos-title&&Text;.hl-text-conch&&Text", - "img": ".hl-lazy&&data-original", - "desc": ".hl-infos-content&&.hl-text-conch&&Text", - "content": ".hl-content-text&&Text", - "tabs": ".hl-tabs&&a", - "lists": ".hl-plays-list:eq(#id)&&li" + title: '.hl-dc-title&&Text;.hl-dc-content&&li:eq(6)&&Text', + img: '.hl-lazy&&data-original', + desc: '.hl-dc-content&&li:eq(10)&&Text;.hl-dc-content&&li:eq(4)&&Text;.hl-dc-content&&li:eq(5)&&Text;.hl-dc-content&&li:eq(2)&&Text;.hl-dc-content&&li:eq(3)&&Text', + content: '.hl-content-text&&Text', + tabs: '.hl-tabs&&a', + tab_text: 'a--span&&Text', + lists: '.hl-plays-list:eq(#id)&&li', }, 搜索: '.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href', searchable: 2,//是否启用全局搜索, @@ -248,23 +318,23 @@ function getMubans() { searchUrl: '/index.php/vod/search/page/fypage/wd/**/', url: '/index.php/vod/show/id/fyclass/page/fypage/', headers: { - 'User-Agent': 'MOBILE_UA' + 'User-Agent': 'MOBILE_UA', }, timeout: 5000, class_parse: '#nav-bar li;a&&Text;a&&href;id/(.*?)/', limit: 40, play_parse: true, - lazy: '', - 推荐: '.list-a.size;li;a&&title;.lazy&&data-original;.bt&&Text;a&&href', + lazy: common_lazy, double: true, + 推荐: '.list-a.size;li;a&&title;.lazy&&data-original;.bt&&Text;a&&href', 一级: '.list-a&&li;a&&title;.lazy&&data-original;.list-remarks&&Text;a&&href', 二级: { - "title": "h2&&Text;.deployment&&Text", - "img": ".lazy&&data-original", - "desc": ".deployment&&Text", - "content": ".ec-show&&Text", - "tabs": "#tag&&a", - "lists": ".play_list_box:eq(#id)&&li" + title: 'h2&&Text;.deployment&&Text', + img: '.lazy&&data-original', + desc: '.deployment&&Text', + content: '.ec-show&&Text', + tabs: '#tag&&a', + lists: '.play_list_box:eq(#id)&&li', }, 搜索: '.search-list;a&&title;.lazy&&data-original;.deployment&&Text;a&&href', searchable: 2,//是否启用全局搜索, @@ -284,18 +354,18 @@ function getMubans() { class_parse: '.menu_bottom ul li;a&&Text;a&&href;.*/(.*?).html', cate_exclude: '解析|动态', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, - 推荐: '.indexShowBox;ul&&li;a&&title;img&&data-src;.s1&&Text;a&&href', double: true, // 推荐内容是否双层定位 + 推荐: '.indexShowBox;ul&&li;a&&title;img&&data-src;.s1&&Text;a&&href', 一级: '.pic-list&&li;a&&title;img&&data-src;.s1&&Text;a&&href', 二级: { - "title": "h1&&Text;.content-rt&&p:eq(0)&&Text", - "img": ".img&&img&&data-src", - "desc": ".content-rt&&p:eq(1)&&Text;.content-rt&&p:eq(2)&&Text;.content-rt&&p:eq(3)&&Text;.content-rt&&p:eq(4)&&Text;.content-rt&&p:eq(5)&&Text", - "content": ".zkjj_a&&Text", - "tabs": ".py-tabs&&option", - "lists": ".player:eq(#id) li" + title: 'h1&&Text;.content-rt&&p:eq(0)&&Text', + img: '.img&&img&&data-src', + desc: '.content-rt&&p:eq(1)&&Text;.content-rt&&p:eq(2)&&Text;.content-rt&&p:eq(3)&&Text;.content-rt&&p:eq(4)&&Text;.content-rt&&p:eq(5)&&Text', + content: '.zkjj_a&&Text', + tabs: '.py-tabs&&option', + lists: '.player:eq(#id) li', }, 搜索: '.sr_lists&&ul&&li;h3&&Text;img&&data-src;.int&&p:eq(0)&&Text;a&&href', }, 短视2: { @@ -314,18 +384,18 @@ function getMubans() { filter_def: {}, detailUrl: '/index.php/vod/detail/id/fyid.html', play_parse: true, - lazy: '', + lazy: common_lazy, limit: 6, 推荐: '.list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href', 一级: 'js:let body=input.split("#")[1];let t=Math.round(new Date/1e3).toString();let key=md5("DS"+t+"DCC147D11943AF75");let url=input.split("#")[0];body=body+"&time="+t+"&key="+key;print(body);fetch_params.body=body;let html=post(url,fetch_params);let data=JSON.parse(html);VODS=data.list.map(function(it){it.vod_pic=urljoin2(input.split("/i")[0],it.vod_pic);return it});', 二级: { - "title": ".slide-info-title&&Text;.slide-info:eq(3)--strong&&Text", - "img": ".detail-pic&&data-original", - "desc": ".fraction&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(2)--strong&&Text;.slide-info:eq(1)--strong&&Text", - "content": "#height_limit&&Text", - "tabs": ".anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a", - "tab_text": ".swiper-slide&&Text", - "lists": ".anthology-list-box:eq(#id) li" + title: '.slide-info-title&&Text;.slide-info:eq(2)--strong&&Text', + img: '.detail-pic&&data-original', + desc: '.slide-info-remarks&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(1)--strong&&Text;.info-parameter&&ul&&li:eq(3)&&Text', + content: '#height_limit&&Text', + tabs: '.anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a', + tab_text: 'a--span&&Text', + lists: '.anthology-list-box:eq(#id) li', }, 搜索: 'json:list;name;pic;;id', }, 采集1: { @@ -348,19 +418,7 @@ function getMubans() { filterable: 0,//是否启用分类筛选, play_parse: true, parse_url: '', - lazy: `js: - if(/\\.(m3u8|mp4)/.test(input)){ - input = {parse:0,url:input} - }else{ - if(rule.parse_url.startsWith('json:')){ - let purl = rule.parse_url.replace('json:','')+input; - let html = request(purl); - input = {parse:0,url:JSON.parse(html).url} - }else{ - input= rule.parse_url+input; - } - } - `, + lazy: cj_lazy, 推荐: '*', 一级: 'json:list;vod_name;vod_pic;vod_remarks;vod_id;vod_play_from', 二级: `js: @@ -369,7 +427,7 @@ function getMubans() { let data=html.list; VOD=data[0];`, 搜索: '*', - } + }, }; return JSON.parse(JSON.stringify(mubanDict)); }