diff --git a/js.json b/js.json index 25c50115..eea99cfa 100644 --- a/js.json +++ b/js.json @@ -17,7 +17,7 @@ {"key":"drpy_js_LIBVIO","name":"影视 | LIBVIO[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/LIBVIO.js"}, {"key":"drpy_js_农民","name":"影视 | 农民[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/农民影视.js"}, {"key":"drpy_js_555电影","name":"影视 | 555电影[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/555电影.js"}, -{"key":"drpy_js_饭团电影","name":"影视 | 饭团电影[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/饭团影视.js"}, +{"key":"drpy_js_饭团影视","name":"影视 | 饭团影视[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/饭团影视.js"}, {"key":"drpy_js_双十电影","name":"影视 | 双十电影[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/双十电影.js"}, {"key":"drpy_js_蓝光影院","name":"影视 | 蓝光影院[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/蓝光影院.js"}, {"key":"drpy_js_8K影视","name":"影视 | 8K影视[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/8K影视.js"}, @@ -37,6 +37,7 @@ {"key":"drpy_js_麦豆com","name":"影视 | 麦豆com[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/麦豆com.js"}, {"key":"drpy_js_188影视","name":"影视 | 188影视[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/188影视.js"}, {"key":"drpy_js_539影视","name":"影视 | 539影视[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/539影视.js"}, +{"key":"drpy_js_北川","name":"影视 | 北川[js]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/北川.js"}, {"key":"drpy_js_69美剧[V2]","name":"影视 | 69美剧[V2]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/69美剧[V2].js"}, {"key":"drpy_js_HG影院[V2]","name":"影视 | HG影院[V2]","type":3,"api":"./lib/drpy2.min.js","ext":"./js/HG影院[V2].js"}, diff --git a/js/188影视.js b/js/188影视.js index 9d95ac9b..305a5d90 100644 --- a/js/188影视.js +++ b/js/188影视.js @@ -1,29 +1,29 @@ var rule={ - title:'188影视', - host:'https://188kan.com', + title:'188影视', + host:'https://188kan.com', // url:'/vod-show{{fl.area}}{{fl.by}}-id-{{fl.cateId}}-page-fypage{{fl.year}}.html', - url:'/vod-showfyfilter.html', - filterable:1,//是否启用分类筛选, - filter_url:'{{fl.area}}{{fl.by}}-id-{{fl.cateId}}-page-fypage{{fl.year}}', - filter: {"1":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"1"},{"n":"动作片","v":"6"},{"n":"喜剧片","v":"7"},{"n":"爱情片","v":"8"},{"n":"恐怖片","v":"10"},{"n":"犯罪片","v":"21"},{"n":"科幻片","v":"9"},{"n":"惊悚片","v":"32"},{"n":"战争片","v":"12"},{"n":"悬疑片","v":"27"},{"n":"灾难片","v":"33"},{"n":"谍战片","v":"34"},{"n":"冒险片","v":"28"},{"n":"剧情片","v":"11"},{"n":"武侠片","v":"45"},{"n":"奇幻片","v":"17"},{"n":"动画片","v":"22"},{"n":"历史片","v":"40"},{"n":"传记片","v":"39"},{"n":"歌舞片","v":"38"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"-area-大陆"},{"n":"香港","v":"-area-香港"},{"n":"台湾","v":"-area-台湾"},{"n":"美国","v":"-area-美国"},{"n":"法国","v":"-area-法国"},{"n":"英国","v":"-area-英国"},{"n":"日本","v":"-area-日本"},{"n":"韩国","v":"-area-韩国"},{"n":"德国","v":"-area-德国"},{"n":"泰国","v":"-area-泰国"},{"n":"印度","v":"-area-印度"},{"n":"意大利","v":"-area-意大利"},{"n":"西班牙","v":"-area-西班牙"},{"n":"加拿大","v":"-area-加拿大"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"国产剧","v":"13"},{"n":"港台剧","v":"14"},{"n":"日韩剧","v":"15"},{"n":"欧美剧","v":"16"},{"n":"海外剧","v":"35"},{"n":"泰国剧","v":"41"},{"n":"其他剧","v":"36"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"-area-内地"},{"n":"韩国","v":"-area-韩国"},{"n":"香港","v":"-area-香港"},{"n":"台湾","v":"-area-台湾"},{"n":"日本","v":"-area-日本"},{"n":"美国","v":"-area-美国"},{"n":"泰国","v":"-area-泰国"},{"n":"英国","v":"-area-英国"},{"n":"新加坡","v":"-area-新加坡"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"3":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"3"},{"n":"大陆综艺","v":"23"},{"n":"港台综艺","v":"24"},{"n":"日韩综艺","v":"25"},{"n":"其他综艺","v":"26"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"-area-内地"},{"n":"港台","v":"-area-港台"},{"n":"日韩","v":"-area-日韩"},{"n":"欧美","v":"-area-欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"4":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"4"},{"n":"国产动漫","v":"42"},{"n":"日韩动漫","v":"43"},{"n":"欧美动漫","v":"44"},{"n":"港台动漫","v":"48"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"国产","v":"-area-国产"},{"n":"日本","v":"-area-日本"},{"n":"欧美","v":"-area-欧美"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"5":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}]}, + url:'/vod-showfyfilter.html', + filterable:1,//是否启用分类筛选, + filter_url:'{{fl.area}}{{fl.by}}-id-{{fl.cateId}}-page-fypage{{fl.year}}', + filter: {"1":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"1"},{"n":"动作片","v":"6"},{"n":"喜剧片","v":"7"},{"n":"爱情片","v":"8"},{"n":"恐怖片","v":"10"},{"n":"犯罪片","v":"21"},{"n":"科幻片","v":"9"},{"n":"惊悚片","v":"32"},{"n":"战争片","v":"12"},{"n":"悬疑片","v":"27"},{"n":"灾难片","v":"33"},{"n":"谍战片","v":"34"},{"n":"冒险片","v":"28"},{"n":"剧情片","v":"11"},{"n":"武侠片","v":"45"},{"n":"奇幻片","v":"17"},{"n":"动画片","v":"22"},{"n":"历史片","v":"40"},{"n":"传记片","v":"39"},{"n":"歌舞片","v":"38"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"-area-大陆"},{"n":"香港","v":"-area-香港"},{"n":"台湾","v":"-area-台湾"},{"n":"美国","v":"-area-美国"},{"n":"法国","v":"-area-法国"},{"n":"英国","v":"-area-英国"},{"n":"日本","v":"-area-日本"},{"n":"韩国","v":"-area-韩国"},{"n":"德国","v":"-area-德国"},{"n":"泰国","v":"-area-泰国"},{"n":"印度","v":"-area-印度"},{"n":"意大利","v":"-area-意大利"},{"n":"西班牙","v":"-area-西班牙"},{"n":"加拿大","v":"-area-加拿大"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"国产剧","v":"13"},{"n":"港台剧","v":"14"},{"n":"日韩剧","v":"15"},{"n":"欧美剧","v":"16"},{"n":"海外剧","v":"35"},{"n":"泰国剧","v":"41"},{"n":"其他剧","v":"36"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"-area-内地"},{"n":"韩国","v":"-area-韩国"},{"n":"香港","v":"-area-香港"},{"n":"台湾","v":"-area-台湾"},{"n":"日本","v":"-area-日本"},{"n":"美国","v":"-area-美国"},{"n":"泰国","v":"-area-泰国"},{"n":"英国","v":"-area-英国"},{"n":"新加坡","v":"-area-新加坡"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"3":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"3"},{"n":"大陆综艺","v":"23"},{"n":"港台综艺","v":"24"},{"n":"日韩综艺","v":"25"},{"n":"其他综艺","v":"26"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"-area-内地"},{"n":"港台","v":"-area-港台"},{"n":"日韩","v":"-area-日韩"},{"n":"欧美","v":"-area-欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"4":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"4"},{"n":"国产动漫","v":"42"},{"n":"日韩动漫","v":"43"},{"n":"欧美动漫","v":"44"},{"n":"港台动漫","v":"48"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"国产","v":"-area-国产"},{"n":"日本","v":"-area-日本"},{"n":"欧美","v":"-area-欧美"},{"n":"其他","v":"-area-其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}],"5":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"-year-2023"},{"n":"2022","v":"-year-2022"},{"n":"2021","v":"-year-2021"},{"n":"2020","v":"-year-2020"},{"n":"2019","v":"-year-2019"},{"n":"2018","v":"-year-2018"},{"n":"2017","v":"-year-2017"},{"n":"2016","v":"-year-2016"},{"n":"2015","v":"-year-2015"},{"n":"2014","v":"-year-2014"},{"n":"2013","v":"-year-2013"},{"n":"2012","v":"-year-2012"},{"n":"2011","v":"-year-2011"},{"n":"2010","v":"-year-2010"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"-by-time"},{"n":"人气","v":"-by-hits"},{"n":"评分","v":"-by-score"}]}]}, filter_def:{ - 1:{cateId:'1'}, - 2:{cateId:'2'}, - 3:{cateId:'3'}, - 4:{cateId:'4'}, + 1:{cateId:'1'}, + 2:{cateId:'2'}, + 3:{cateId:'3'}, + 4:{cateId:'4'}, 5:{cateId:'5'} - }, - searchUrl:'/vod-search-page-fypage-wd-**.html', + }, + searchUrl:'/vod-search-page-fypage-wd-**.html', //class_parse:'.navbar-items li:gt(1):lt(6);a&&Text;a&&href;.*/(.*?).html', - searchable:2, - headers:{'User-Agent':'MOBILE_UA', }, - class_name:'电影&电视剧&综艺&动漫&纪录片', - class_url:'1&2&3&4&5', - 推荐:'.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, // 推荐内容是否双层定位 - 一级:'body a.module-poster-item.module-item;a&&title;.lazyload&&data-original;.module-item-note&&Text;a&&href', + searchable:2, + headers:{'User-Agent':'MOBILE_UA', }, + class_name:'电影&电视剧&综艺&动漫&纪录片', + class_url:'1&2&3&4&5', + 推荐:'.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, // 推荐内容是否双层定位 + 一级:'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;.module-info-item:eq(2)&&.module-info-item-content&&Text;.module-info-item:eq(1)&&.module-info-item-content&&Text","content":".module-info-introduction&&Text","tabs":".module-tab-item.tab-item","lists":".module-list:eq(#id)&&.module-play-list-content&&a"}, - 二级:{"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;.module-info-item:eq(2)&&.module-info-item-content&&Text;.module-info-item:eq(1)&&.module-info-item-content&&Text","content":".module-info-introduction&&Text","tabs":"#y-playList .tab-item","lists":".module-play-list:eq(#id) a"}, - 搜索:'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text', -} \ No newline at end of file + 二级:{"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;.module-info-item:eq(2)&&.module-info-item-content&&Text;.module-info-item:eq(1)&&.module-info-item-content&&Text","content":".module-info-introduction&&Text","tabs":"#y-playList .tab-item","lists":".module-play-list:eq(#id) a"}, + 搜索:'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text', +} diff --git a/js/539影视.js b/js/539影视.js index 6003d77a..937c4c07 100644 --- a/js/539影视.js +++ b/js/539影视.js @@ -1,27 +1,27 @@ -muban.首图2。二级。desc = '.data:eq(1)&&Text;.data:eq(3)&&Text;.data:eq(2)&&Text;.data:eq(5)&&Text;.data:eq(4)&&Text'; -muban.首图2。二级。tabs = '.nav.nav-tabs&&li'; +muban.首图2.二级.desc = '.data:eq(1)&&Text;.data:eq(3)&&Text;.data:eq(2)&&Text;.data:eq(5)&&Text;.data:eq(4)&&Text'; +muban.首图2.二级.tabs = '.nav.nav-tabs&&li'; var rule = { - title:'539影视', - 模板:'首图2', - host:'https://539539.xyz', + title:'539影视', + 模板:'首图2', + host:'https://539539.xyz', // url:'/vodshow/fyclass/page/fypage.html', - url:'/vodshow/fyfilter.html', - filterable:1,//是否启用分类筛选, - filter_url:'{{fl.cateId}}{{fl.area}}{{fl.by}}{{fl.class}}{{fl.lang}}/page/fypage{{fl.year}}', + url:'/vodshow/fyfilter.html', + filterable:1,//是否启用分类筛选, + filter_url:'{{fl.cateId}}{{fl.area}}{{fl.by}}{{fl.class}}{{fl.lang}}/page/fypage{{fl.year}}', filter:{ - "1":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"1"},{"n":"动作片","v":"6"},{"n":"喜剧片","v":"7"},{"n":"爱情片","v":"8"},{"n":"科幻片","v":"9"},{"n":"恐怖片","v":"10"},{"n":"剧情片","v":"11"},{"n":"战争片","v":"12"},{"n":"动画片","v":"29"},{"n":"悬疑片","v":"32"},{"n":"犯罪片","v":"35"},{"n":"奇幻片","v":"36"},{"n":"纪录片","v":"38"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"喜剧","v":"/class/喜剧"},{"n":"爱情","v":"/class/爱情"},{"n":"恐怖","v":"/class/恐怖"},{"n":"动作","v":"/class/动作"},{"n":"纪录","v":"/class/纪录"},{"n":"科幻","v":"/class/科幻"},{"n":"剧情","v":"/class/剧情"},{"n":"战争","v":"/class/战争"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动画","v":"/class/动画"},{"n":"奇幻","v":"/class/奇幻"},{"n":"武侠","v":"/class/武侠"},{"n":"冒险","v":"/class/冒险"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], - "2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"国产剧","v":"13"},{"n":"港台剧","v":"14"},{"n":"日韩剧","v":"15"},{"n":"海外剧","v":"16"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"古装","v":"/class/古装"},{"n":"战争","v":"/class/战争"},{"n":"青春","v":"/class/青春"},{"n":"偶像","v":"/class/偶像"},{"n":"恐怖","v":"/class/恐怖"},{"n":"喜剧","v":"/class/喜剧"},{"n":"家庭","v":"/class/家庭"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动作","v":"/class/动作"},{"n":"奇幻","v":"/class/奇幻"},{"n":"剧情","v":"/class/剧情"},{"n":"历史","v":"/class/历史"},{"n":"经典","v":"/class/经典"},{"n":"情景","v":"/class/情景"},{"n":"商战","v":"/class/商战"},{"n":"网剧","v":"/class/网剧"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], - "3":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"选秀","v":"/class/选秀"},{"n":"情感","v":"/class/情感"},{"n":"访谈","v":"/class/访谈"},{"n":"播报","v":"/class/播报"},{"n":"旅游","v":"/class/旅游"},{"n":"音乐","v":"/class/音乐"},{"n":"美食","v":"/class/美食"},{"n":"纪实","v":"/class/纪实"},{"n":"曲艺","v":"/class/曲艺"},{"n":"生活","v":"/class/生活"},{"n":"游戏","v":"/class/游戏"},{"n":"求职","v":"/class/求职"},{"n":"其它","v":"/class/其它"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], - "4":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"情感","v":"/class/情感"},{"n":"科幻","v":"/class/科幻"},{"n":"热血","v":"/class/热血"},{"n":"推理","v":"/class/推理"},{"n":"搞笑","v":"/class/搞笑"},{"n":"冒险","v":"/class/冒险"},{"n":"萝莉","v":"/class/萝莉"},{"n":"校园","v":"/class/校园"},{"n":"动作","v":"/class/动作"},{"n":"机战","v":"/class/机战"},{"n":"运动","v":"/class/运动"},{"n":"战争","v":"/class/战争"},{"n":"少年","v":"/class/少年"},{"n":"少女","v":"/class/少女"},{"n":"社会","v":"/class/社会"},{"n":"原创","v":"/class/原创"},{"n":"亲子","v":"/class/亲子"},{"n":"益智","v":"/class/益智"},{"n":"励志","v":"/class/励志"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}] - }, + "1":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"1"},{"n":"动作片","v":"6"},{"n":"喜剧片","v":"7"},{"n":"爱情片","v":"8"},{"n":"科幻片","v":"9"},{"n":"恐怖片","v":"10"},{"n":"剧情片","v":"11"},{"n":"战争片","v":"12"},{"n":"动画片","v":"29"},{"n":"悬疑片","v":"32"},{"n":"犯罪片","v":"35"},{"n":"奇幻片","v":"36"},{"n":"纪录片","v":"38"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"喜剧","v":"/class/喜剧"},{"n":"爱情","v":"/class/爱情"},{"n":"恐怖","v":"/class/恐怖"},{"n":"动作","v":"/class/动作"},{"n":"纪录","v":"/class/纪录"},{"n":"科幻","v":"/class/科幻"},{"n":"剧情","v":"/class/剧情"},{"n":"战争","v":"/class/战争"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动画","v":"/class/动画"},{"n":"奇幻","v":"/class/奇幻"},{"n":"武侠","v":"/class/武侠"},{"n":"冒险","v":"/class/冒险"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], + "2":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"2"},{"n":"国产剧","v":"13"},{"n":"港台剧","v":"14"},{"n":"日韩剧","v":"15"},{"n":"海外剧","v":"16"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"古装","v":"/class/古装"},{"n":"战争","v":"/class/战争"},{"n":"青春","v":"/class/青春"},{"n":"偶像","v":"/class/偶像"},{"n":"恐怖","v":"/class/恐怖"},{"n":"喜剧","v":"/class/喜剧"},{"n":"家庭","v":"/class/家庭"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动作","v":"/class/动作"},{"n":"奇幻","v":"/class/奇幻"},{"n":"剧情","v":"/class/剧情"},{"n":"历史","v":"/class/历史"},{"n":"经典","v":"/class/经典"},{"n":"情景","v":"/class/情景"},{"n":"商战","v":"/class/商战"},{"n":"网剧","v":"/class/网剧"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], + "3":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"选秀","v":"/class/选秀"},{"n":"情感","v":"/class/情感"},{"n":"访谈","v":"/class/访谈"},{"n":"播报","v":"/class/播报"},{"n":"旅游","v":"/class/旅游"},{"n":"音乐","v":"/class/音乐"},{"n":"美食","v":"/class/美食"},{"n":"纪实","v":"/class/纪实"},{"n":"曲艺","v":"/class/曲艺"},{"n":"生活","v":"/class/生活"},{"n":"游戏","v":"/class/游戏"},{"n":"求职","v":"/class/求职"},{"n":"其它","v":"/class/其它"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}], + "4":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"情感","v":"/class/情感"},{"n":"科幻","v":"/class/科幻"},{"n":"热血","v":"/class/热血"},{"n":"推理","v":"/class/推理"},{"n":"搞笑","v":"/class/搞笑"},{"n":"冒险","v":"/class/冒险"},{"n":"萝莉","v":"/class/萝莉"},{"n":"校园","v":"/class/校园"},{"n":"动作","v":"/class/动作"},{"n":"机战","v":"/class/机战"},{"n":"运动","v":"/class/运动"},{"n":"战争","v":"/class/战争"},{"n":"少年","v":"/class/少年"},{"n":"少女","v":"/class/少女"},{"n":"社会","v":"/class/社会"},{"n":"原创","v":"/class/原创"},{"n":"亲子","v":"/class/亲子"},{"n":"益智","v":"/class/益智"},{"n":"励志","v":"/class/励志"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"/area/大陆"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"日本","v":"/area/日本"},{"n":"泰国","v":"/area/泰国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"马来西亚","v":"/area/马来西亚"},{"n":"印度","v":"/area/印度"},{"n":"英国","v":"/area/英国"},{"n":"法国","v":"/area/法国"},{"n":"其它","v":"/area/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"其它","v":"/year/其它"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}] + }, filter_def:{ - 1:{cateId:'1'}, - 2:{cateId:'2'}, - 3:{cateId:'3'}, + 1:{cateId:'1'}, + 2:{cateId:'2'}, + 3:{cateId:'3'}, 4:{cateId:'4'} - }, - searchUrl:'/vodsearch.html#wd=**;post', - class_parse: '.stui-header__menu li:gt(0):lt(5);a&&Text;a&&href;/(\\d+).html', - lazy:"js:var html=JSON.parse(request(input).match(/r player_.*?=(.*?) ${v}`) -} - -/** - * 获取数据库配置表对应的key字段的value,没有这个key就返回value默认传参.需要有缓存,第一次获取后会存在内存里 - * @param k 键 - * @param v 值 - * @returns {*} - */ -function getItem(k,v){ - return local.get(RKEY,k) || v; -} - -/** - * 删除数据库key对应的一条数据,并清除此key对应的内存缓存 - * @param k - */ -function clearItem(k){ - local.delete(RKEY,k); -} - -var showMode = getItem('showMode','groups'); // groups按组分类显示 all全部一条线路展示 - -/** - * 打印日志 - * @param any 任意变量 - */ -function print(any){ - any = any||''; - if(typeof(any)=='object'&&Object.keys(any).length>0){ - try { - any = JSON.stringify(any); - console.log(any); - }catch (e) { - // console.log('print:'+e.message); - console.log(typeof(any)+':'+any.length); - } - }else if(typeof(any)=='object'&&Object.keys(any).length<1){ - console.log('null object'); - }else{ - console.log(any); - } -} - -/*** js自封装的方法 ***/ - -/** - * 获取链接的host(带http协议的完整链接) - * @param url 任意一个正常完整的Url,自动提取根 - * @returns {string} - */ -function getHome(url){ - if(!url){ - return '' - } - let tmp = url.split('//'); - url = tmp[0] + '//' + tmp[1].split('/')[0]; - try { - url = decodeURIComponent(url); - }catch (e) {} - return url -} - -/** - * m3u直播格式转一般直播格式 - * @param m3u - * @returns {string} - */ -function convertM3uToNormal(m3u) { - try { - const lines = m3u.split('\n'); - let result = ''; - let TV=''; - // let flag='#genre#'; - let flag='#m3u#'; - let currentGroupTitle = ''; - lines.forEach((line) => { - if (line.startsWith('#EXTINF:')) { - const groupTitle = line.split('"')[1].trim(); - TV= line.split('"')[2].substring(1); - if (currentGroupTitle !== groupTitle) { - currentGroupTitle = groupTitle; - result += `\n${currentGroupTitle},${flag}\n`; - } - } else if (line.startsWith('http')) { - const splitLine = line.split(','); - result += `${TV}\,${splitLine[0]}\n`; - } - }); - return result.trim(); - }catch (e) { - print(`m3u直播转普通直播发生错误:${e.message}`); - return m3u - } -} - -/** - * 线路归类 - * @param arr - * @returns {*[][]} - */ -function merge(arr) { - var parse = arguments[1] ? arguments[1] : ''; - var p = []; - if (parse !== '' && typeof(parse)=="function") { - p = arr.map(parse); - } - const createEmptyArrays = (length) => Array.from({ - length - }, () => []); - let lists = createEmptyArrays(arr.length); - let sl = createEmptyArrays(arr.length); - (p.length ? p : arr).forEach((k, index) => { - var i = 0; - while (sl[i].includes(k)) { - i = i + 1 - } - sl[i].push(k); - lists[i].push(arr[index]); - }) - lists=lists.filter(x=>x.some(k=>k.length)); - return lists -} - -/** - * 线路归类/小棉袄算法 - * @param arr 数组 - * @param parse 解析式 - * @returns {[[*]]} - */ -function splitArray(arr,parse) { - parse = parse&&typeof(parse)=='function'?parse:''; - let result = [[arr[0]]]; - for (let i = 1; i < arr.length; i++) { - let index = -1; - for (let j = 0; j < result.length; j++) { - if (parse&&result[j].map(parse).includes(parse(arr[i]))) { - index = j; - }else if((!parse) && result[j].includes(arr[i])){ - index = j; - } - } - if (index >= result.length - 1) { - result.push([]); - result[result.length - 1].push(arr[i]); - } else { - result[index + 1].push(arr[i]); - } - } - return result; -} - -const http = function (url, options = {}) { - if(options.method ==='POST' && options.data){ - options.body = JSON.stringify(options.data); - options.headers = Object.assign({'content-type':'application/json'}, options.headers); - } - options.timeout = request_timeout; - if(!options.headers){ - options.headers = {}; - } - let keys = Object.keys(options.headers).map(it=>it.toLowerCase()); - if(!keys.includes('referer')){ - options.headers['Referer'] = getHome(url); - } - if(!keys.includes('user-agent')){ - options.headers['User-Agent'] = UA; - } - console.log(JSON.stringify(options.headers)); - try { - const res = req(url, options); - // if(options.headers['Authorization']){ - // console.log(res.content); - // } - res.json = () => res&&res.content ? JSON.parse(res.content) : null; - res.text = () => res&&res.content ? res.content:''; - return res - }catch (e) { - return { - json() { - return null - }, text() { - return '' - } - } - } -}; -["get", "post"].forEach(method => { - http[method] = function (url, options = {}) { - return http(url, Object.assign(options, {method: method.toUpperCase()})); - } -}); - -function init(ext) { - console.log("当前版本号:"+VERSION); - let data; - if (typeof ext == 'object'){ - data = ext; - print('live ext:object'); - } else if (typeof ext == 'string') { - if (ext.startsWith('http')) { - let ext_paramas = ext.split(';'); - let data_url = ext_paramas[0]; - print(data_url); - data = http.get(data_url).json(); - } - } - print(data); - __ext.data = data; - print('init执行完毕'); -} - -function home(filter) { - let classes = __ext.data.map(it => ({ - type_id: it.url, - type_name: it.name, - })); - print("----home----"); - let filter_dict = {}; - let filters = [ - {'key': 'show', 'name': '播放展示', 'value': [{'n': '多线路分组', 'v': 'groups'},{'n': '单线路', 'v': 'all'}]} - ]; - classes.forEach(it=>{ - filter_dict[it.type_id] = filters; - }); - print(classes); - return JSON.stringify({ 'class': classes,'filters': filter_dict}); -} - -function homeVod(params) { - let _get_url = __ext.data[0].url; - let html; - if(__ext.data_dict[_get_url]){ - html = __ext.data_dict[_get_url]; - }else{ - html = http.get(_get_url).text(); - if(/#EXTM3U/.test(html)){ - html = convertM3uToNormal(html); - } - __ext.data_dict[_get_url] = html; - } - // let arr = html.match(/.*?,#[\s\S].*?#/g); - let arr = html.match(/.*?[,,]#[\s\S].*?#/g); // 可能存在中文逗号 - let _list = []; - try { - arr.forEach(it=>{ - let vname = it.split(/[,,]/)[0]; - let vtab = it.match(/#(.*?)#/)[0]; - _list.push({ - vod_name:vname, - vod_id:_get_url+'$'+vname, - vod_pic:def_pic, - vod_remarks:vtab, - }); - }); - }catch (e) { - print('Live2cms获取首页推荐发送错误:'+e.message); - } - return JSON.stringify({ 'list': _list }); -} - -function category(tid, pg, filter, extend) { - let fl = filter?extend:{}; - if(fl.show){ - showMode = fl.show; - setItem('showMode',showMode); - } - if(parseInt(pg)>1){ - return JSON.stringify({ - 'list': [], - }); - } - let _get_url = tid; - let html; - if(__ext.data_dict[_get_url]){ - html = __ext.data_dict[_get_url]; - }else{ - html = http.get(_get_url).text(); - if(/#EXTM3U/.test(html)){ - html = convertM3uToNormal(html); - } - __ext.data_dict[_get_url] = html; - } - // let arr = html.match(/.*?[,,]#[\s\S].*?#/g); - let arr = html.match(/.*?[,,]#[\s\S].*?#/g); // 可能存在中文逗号 - let _list = []; - try { - arr.forEach(it=>{ - let vname = it.split(/[,,]/)[0]; - let vtab = it.match(/#(.*?)#/)[0]; - _list.push({ - // vod_name:it.split(',')[0], - vod_name:vname, - vod_id:_get_url+'$'+vname, - vod_pic:def_pic, - vod_remarks:vtab, - }); - }); - }catch (e) { - print('Live2cms获取一级分类页发生错误:'+e.message); - } - - return JSON.stringify({ - 'page': 1, - 'pagecount': 1, - 'limit': _list.length, - 'total': _list.length, - 'list': _list, - }); -} - -function detail(tid) { // ⛵ 港•澳•台 - let _get_url = tid.split('$')[0]; - let _tab = tid.split('$')[1]; - if(tid.includes('#search#')){ - let vod_play_url = _tab.replace('#search#','')+'$'+_get_url; - print(vod_play_url); - return JSON.stringify({ - list: [{ - vod_id: tid, - vod_name: '搜索:'+_tab.replace('#search#',''), - type_name: "直播列表", - vod_pic: def_pic, - vod_content: tid, - vod_play_from: '来自搜索', - vod_play_url: vod_play_url, - vod_director: tips, - vod_remarks: `道长直播转点播js-当前版本${VERSION}`, - }] - }); - } - let html; - if(__ext.data_dict[_get_url]){ - html = __ext.data_dict[_get_url]; - }else{ - html = http.get(_get_url).text(); - if(/#EXTM3U/.test(html)){ - html = convertM3uToNormal(html); - } - __ext.data_dict[_get_url] = html; - } - // let a = new RegExp(`.*?${_tab},#[\\s\\S].*?#`); - let a = new RegExp(`.*?${_tab.replace('(','\\(').replace(')','\\)')}[,,]#[\\s\\S].*?#`); - let b = html.match(a)[0]; - let c = html.split(b)[1]; - if(c.match(/.*?[,,]#[\s\S].*?#/)){ - let d = c.match(/.*?[,,]#[\s\S].*?#/)[0]; - c = c.split(d)[0]; - } - let arr = c.trim().split('\n'); - let _list = []; - arr.forEach((it)=>{ - if(it.trim()){ - let t = it.trim().split(',')[0]; - let u = it.trim().split(',')[1]; - _list.push(t+'$'+u); - } - }); - - let vod_name = __ext.data.find(x=>x.url===_get_url).name; - let vod_play_url; - let vod_play_from; - - if(showMode==='groups'){ - let groups = splitArray(_list,x=>x.split('$')[0]); - let tabs = []; - for(let i=0;iit.join('#')).join('$$$'); - vod_play_from = tabs.join('$$$'); - }else{ - vod_play_url = _list.join('#'); - vod_play_from = vod_name; - } - let vod = { - vod_id: tid, - vod_name: vod_name+'|'+_tab, - type_name: "直播列表", - vod_pic: def_pic, - vod_content: tid, - vod_play_from: vod_play_from, - vod_play_url: vod_play_url, - vod_director: tips, - vod_remarks: `道长直播转点播js-当前版本${VERSION}`, - }; - - return JSON.stringify({ - list: [vod] - }); -} - -function play(flag, id, flags) { - let vod = { - 'parse': /m3u8/.test(id)?0:1, - 'playUrl': '', - 'url': id - }; - print(vod); - return JSON.stringify(vod); -} - -function search(wd, quick) { - let _get_url = __ext.data[0].url; - let html; - if(__ext.data_dict[_get_url]){ - html = __ext.data_dict[_get_url]; - }else{ - html = http.get(_get_url).text(); - if(/#EXTM3U/.test(html)){ - html = convertM3uToNormal(html); - } - __ext.data_dict[_get_url] = html; - } - let str=''; - Object.keys(__ext.data_dict).forEach(()=>{ - str+=__ext.data_dict[_get_url]; - }); - let links = str.split('\n').filter(it=>it.trim() && it.includes(',')); - links = links.map(it=>it.trim()); - let plays = Array.from(new Set(links)); - print('搜索关键词:'+wd); - print('过滤前:'+plays.length); - plays = plays.filter(it=>it.includes(wd)); - print('过滤后:'+plays.length); - print(plays); - let _list = []; - plays.forEach((it)=>{ - _list.push({ - 'vod_name':it.split(',')[0], - 'vod_id':it.split(',')[1].trim()+'$'+it.split(',')[0].trim()+'#search#', - 'vod_pic':def_pic, - }) - }); - return JSON.stringify({ - 'list': _list - }); -} - -// 导出函数对象 -export default { - init: init, - home: home, - homeVod: homeVod, - category: category, - detail: detail, - play: play, - search: search -} +/** + * live2cms.js + * 配置设置 {"key":"Live2CMS","name":"直播转点播V2","type":3,"api":"{{host}}/libs/live2cms.js","searchable":2,"quickSearch":0,"filterable":0,"ext":"{{host}}/txt/json/live2mv_data.json"} + * live2mv_data.json + * 支持m3u类直播,支持线路归并。支持筛选切换显示模式 +[ +{"name": "甜蜜", "url": "http://zdir.kebedd69.repl.co/public/live.txt"}, +{"name": "俊于", "url": "http://home.jundie.top:81/Cat/tv/live.txt"}, +{"name": "菜妮丝", "url": "http://xn--ihqu10cn4c.xn--z7x900a.love:63/TV/tvzb.txt"}, +{"name": "布里m3u", "url": "http://jiexi.bulisite.top/m3u.php"}, +{"name": "吾爱", "url": "http://52bsj.vip:81/api/v3/file/get/763/live.txt?sign=87BTGT1_6AOry7FPwy_uuxFTv2Wcb9aDMj46rDdRTD8%3D%3A0"}, +{"name": "饭太硬", "url": "http://ftyyy.tk/live.txt"} +] + + * 提示 ext文件格式为json列表,name,url参数 + * 取消加密,减少性能问题 + */ +String.prototype.rstrip = function (chars) { + let regex = new RegExp(chars + "$"); + return this.replace(regex, ""); +}; +const request_timeout = 5000; +const RKEY = 'live2cms'; // 源的唯一标识 +const VERSION = 'live2cms 20230619'; +const UA = 'Mozilla/5.0'; //默认请求ua +const __ext = {data_dict:{}}; +const tips = `\n道长直播转点播js-当前版本${VERSION}`; +const def_pic = 'https://avatars.githubusercontent.com/u/97389433?s=120&v=4'; + +/** + * 存在数据库配置表里, key字段对应值value,没有就新增,有就更新,调用此方法会清除key对应的内存缓存 + * @param k 键 + * @param v 值 + */ +function setItem(k,v){ + local.set(RKEY,k,v); + console.log(`规则${RKEY}设置${k} => ${v}`) +} + +/** + * 获取数据库配置表对应的key字段的value,没有这个key就返回value默认传参.需要有缓存,第一次获取后会存在内存里 + * @param k 键 + * @param v 值 + * @returns {*} + */ +function getItem(k,v){ + return local.get(RKEY,k) || v; +} + +/** + * 删除数据库key对应的一条数据,并清除此key对应的内存缓存 + * @param k + */ +function clearItem(k){ + local.delete(RKEY,k); +} + +var showMode = getItem('showMode','groups'); // groups按组分类显示 all全部一条线路展示 +var groupDict = JSON.parse(getItem('groupDict','{}')); // 搜索分组字典 + +/** + * 打印日志 + * @param any 任意变量 + */ +function print(any){ + any = any||''; + if(typeof(any)=='object'&&Object.keys(any).length>0){ + try { + any = JSON.stringify(any); + console.log(any); + }catch (e) { + // console.log('print:'+e.message); + console.log(typeof(any)+':'+any.length); + } + }else if(typeof(any)=='object'&&Object.keys(any).length<1){ + console.log('null object'); + }else{ + console.log(any); + } +} + +/*** js自封装的方法 ***/ + +/** + * 获取链接的host(带http协议的完整链接) + * @param url 任意一个正常完整的Url,自动提取根 + * @returns {string} + */ +function getHome(url){ + if(!url){ + return '' + } + let tmp = url.split('//'); + url = tmp[0] + '//' + tmp[1].split('/')[0]; + try { + url = decodeURIComponent(url); + }catch (e) {} + return url +} + +/** + * m3u直播格式转一般直播格式 + * @param m3u + * @returns {string} + */ +function convertM3uToNormal(m3u) { + try { + const lines = m3u.split('\n'); + let result = ''; + let TV=''; + // let flag='#genre#'; + let flag='#m3u#'; + let currentGroupTitle = ''; + lines.forEach((line) => { + if (line.startsWith('#EXTINF:')) { + const groupTitle = line.split('"')[1].trim(); + TV= line.split('"')[2].substring(1); + if (currentGroupTitle !== groupTitle) { + currentGroupTitle = groupTitle; + result += `\n${currentGroupTitle},${flag}\n`; + } + } else if (line.startsWith('http')) { + const splitLine = line.split(','); + result += `${TV}\,${splitLine[0]}\n`; + } + }); + return result.trim(); + }catch (e) { + print(`m3u直播转普通直播发生错误:${e.message}`); + return m3u + } +} + +/** + * 线路归类 + * @param arr + * @returns {*[][]} + */ +function merge(arr) { + var parse = arguments[1] ? arguments[1] : ''; + var p = []; + if (parse !== '' && typeof(parse)=="function") { + p = arr.map(parse); + } + const createEmptyArrays = (length) => Array.from({ + length + }, () => []); + let lists = createEmptyArrays(arr.length); + let sl = createEmptyArrays(arr.length); + (p.length ? p : arr).forEach((k, index) => { + var i = 0; + while (sl[i].includes(k)) { + i = i + 1 + } + sl[i].push(k); + lists[i].push(arr[index]); + }) + lists=lists.filter(x=>x.some(k=>k.length)); + return lists +} + +/** + * 线路归类/小棉袄算法 + * @param arr 数组 + * @param parse 解析式 + * @returns {[[*]]} + */ +function splitArray(arr,parse) { + parse = parse&&typeof(parse)=='function'?parse:''; + let result = [[arr[0]]]; + for (let i = 1; i < arr.length; i++) { + let index = -1; + for (let j = 0; j < result.length; j++) { + if (parse&&result[j].map(parse).includes(parse(arr[i]))) { + index = j; + }else if((!parse) && result[j].includes(arr[i])){ + index = j; + } + } + if (index >= result.length - 1) { + result.push([]); + result[result.length - 1].push(arr[i]); + } else { + result[index + 1].push(arr[i]); + } + } + return result; +} + + +/** + * 搜索结果生成分组字典 + * @param arr + * @param parse x=>x.split(',')[0] + * @returns {{}} + */ +function gen_group_dict(arr,parse){ + let dict = {}; + arr.forEach((it)=>{ + let k = it.split(',')[0]; + if(parse && typeof(parse)==='function'){ + k = parse(k); + } + if(!dict[k]){ + dict[k] = [it] + }else{ + dict[k].push(it); + } + }); + return dict +} + +const http = function (url, options = {}) { + if(options.method ==='POST' && options.data){ + options.body = JSON.stringify(options.data); + options.headers = Object.assign({'content-type':'application/json'}, options.headers); + } + options.timeout = request_timeout; + if(!options.headers){ + options.headers = {}; + } + let keys = Object.keys(options.headers).map(it=>it.toLowerCase()); + if(!keys.includes('referer')){ + options.headers['Referer'] = getHome(url); + } + if(!keys.includes('user-agent')){ + options.headers['User-Agent'] = UA; + } + console.log(JSON.stringify(options.headers)); + try { + const res = req(url, options); + // if(options.headers['Authorization']){ + // console.log(res.content); + // } + res.json = () => res&&res.content ? JSON.parse(res.content) : null; + res.text = () => res&&res.content ? res.content:''; + return res + }catch (e) { + return { + json() { + return null + }, text() { + return '' + } + } + } +}; +["get", "post"].forEach(method => { + http[method] = function (url, options = {}) { + return http(url, Object.assign(options, {method: method.toUpperCase()})); + } +}); + +function init(ext) { + console.log("当前版本号:"+VERSION); + let data; + if (typeof ext == 'object'){ + data = ext; + print('live ext:object'); + } else if (typeof ext == 'string') { + if (ext.startsWith('http')) { + let ext_paramas = ext.split(';'); + let data_url = ext_paramas[0]; + print(data_url); + data = http.get(data_url).json(); + } + } + print(data); + __ext.data = data; + print('init执行完毕'); +} + +function home(filter) { + let classes = __ext.data.map(it => ({ + type_id: it.url, + type_name: it.name, + })); + print("----home----"); + let filter_dict = {}; + let filters = [ + {'key': 'show', 'name': '播放展示', 'value': [{'n': '多线路分组', 'v': 'groups'},{'n': '单线路', 'v': 'all'}]} + ]; + classes.forEach(it=>{ + filter_dict[it.type_id] = filters; + }); + print(classes); + return JSON.stringify({ 'class': classes,'filters': filter_dict}); +} + +function homeVod(params) { + let _get_url = __ext.data[0].url; + let html; + if(__ext.data_dict[_get_url]){ + html = __ext.data_dict[_get_url]; + }else{ + html = http.get(_get_url).text(); + if(/#EXTM3U/.test(html)){ + html = convertM3uToNormal(html); + } + __ext.data_dict[_get_url] = html; + } + // let arr = html.match(/.*?,#[\s\S].*?#/g); + let arr = html.match(/.*?[,,]#[\s\S].*?#/g); // 可能存在中文逗号 + let _list = []; + try { + arr.forEach(it=>{ + let vname = it.split(/[,,]/)[0]; + let vtab = it.match(/#(.*?)#/)[0]; + _list.push({ + vod_name:vname, + vod_id:_get_url+'$'+vname, + vod_pic:def_pic, + vod_remarks:vtab, + }); + }); + }catch (e) { + print('Live2cms获取首页推荐发送错误:'+e.message); + } + return JSON.stringify({ 'list': _list }); +} + +function category(tid, pg, filter, extend) { + let fl = filter?extend:{}; + if(fl.show){ + showMode = fl.show; + setItem('showMode',showMode); + } + if(parseInt(pg)>1){ + return JSON.stringify({ + 'list': [], + }); + } + let _get_url = tid; + let html; + if(__ext.data_dict[_get_url]){ + html = __ext.data_dict[_get_url]; + }else{ + html = http.get(_get_url).text(); + if(/#EXTM3U/.test(html)){ + html = convertM3uToNormal(html); + } + __ext.data_dict[_get_url] = html; + } + // let arr = html.match(/.*?[,,]#[\s\S].*?#/g); + let arr = html.match(/.*?[,,]#[\s\S].*?#/g); // 可能存在中文逗号 + let _list = []; + try { + arr.forEach(it=>{ + let vname = it.split(/[,,]/)[0]; + let vtab = it.match(/#(.*?)#/)[0]; + _list.push({ + // vod_name:it.split(',')[0], + vod_name:vname, + vod_id:_get_url+'$'+vname, + vod_pic:def_pic, + vod_remarks:vtab, + }); + }); + }catch (e) { + print('Live2cms获取一级分类页发生错误:'+e.message); + } + + return JSON.stringify({ + 'page': 1, + 'pagecount': 1, + 'limit': _list.length, + 'total': _list.length, + 'list': _list, + }); +} + +function detail(tid) { // ⛵ 港•澳•台 + let _get_url = tid.split('$')[0]; + let _tab = tid.split('$')[1]; + if(tid.includes('#search#')){ + let vod_name = _tab.replace('#search#',''); + let vod_play_from = '来自搜索'; + vod_play_from+=`:${_get_url}`; + + // let vod_play_url = vod_name+'$'+_get_url; + // print(vod_play_url); + + let vod_play_url = groupDict[_get_url].map(x=>x.replace(',','$')).join('#'); + + return JSON.stringify({ + list: [{ + vod_id: tid, + vod_name: '搜索:'+vod_name, + type_name: "直播列表", + vod_pic: def_pic, + vod_content: tid, + vod_play_from: vod_play_from, + vod_play_url: vod_play_url, + vod_director: tips, + vod_remarks: `道长直播转点播js-当前版本${VERSION}`, + }] + }); + } + let html; + if(__ext.data_dict[_get_url]){ + html = __ext.data_dict[_get_url]; + }else{ + html = http.get(_get_url).text(); + if(/#EXTM3U/.test(html)){ + html = convertM3uToNormal(html); + } + __ext.data_dict[_get_url] = html; + } + // let a = new RegExp(`.*?${_tab},#[\\s\\S].*?#`); + let a = new RegExp(`.*?${_tab.replace('(','\\(').replace(')','\\)')}[,,]#[\\s\\S].*?#`); + let b = html.match(a)[0]; + let c = html.split(b)[1]; + if(c.match(/.*?[,,]#[\s\S].*?#/)){ + let d = c.match(/.*?[,,]#[\s\S].*?#/)[0]; + c = c.split(d)[0]; + } + let arr = c.trim().split('\n'); + let _list = []; + arr.forEach((it)=>{ + if(it.trim()){ + let t = it.trim().split(',')[0]; + let u = it.trim().split(',')[1]; + _list.push(t+'$'+u); + } + }); + + let vod_name = __ext.data.find(x=>x.url===_get_url).name; + let vod_play_url; + let vod_play_from; + + if(showMode==='groups'){ + let groups = splitArray(_list,x=>x.split('$')[0]); + let tabs = []; + for(let i=0;iit.join('#')).join('$$$'); + vod_play_from = tabs.join('$$$'); + }else{ + vod_play_url = _list.join('#'); + vod_play_from = vod_name; + } + let vod = { + vod_id: tid, + vod_name: vod_name+'|'+_tab, + type_name: "直播列表", + vod_pic: def_pic, + vod_content: tid, + vod_play_from: vod_play_from, + vod_play_url: vod_play_url, + vod_director: tips, + vod_remarks: `道长直播转点播js-当前版本${VERSION}`, + }; + + return JSON.stringify({ + list: [vod] + }); +} + +function play(flag, id, flags) { + let vod = { + 'parse': /m3u8/.test(id)?0:1, + 'playUrl': '', + 'url': id + }; + print(vod); + return JSON.stringify(vod); +} + +function search(wd, quick) { + let _get_url = __ext.data[0].url; + let html; + if(__ext.data_dict[_get_url]){ + html = __ext.data_dict[_get_url]; + }else{ + html = http.get(_get_url).text(); + if(/#EXTM3U/.test(html)){ + html = convertM3uToNormal(html); + } + __ext.data_dict[_get_url] = html; + } + let str=''; + Object.keys(__ext.data_dict).forEach(()=>{ + str+=__ext.data_dict[_get_url]; + }); + let links = str.split('\n').filter(it=>it.trim() && it.includes(',') && it.split(',')[1].trim().startsWith('http')); + links = links.map(it=>it.trim()); + let plays = Array.from(new Set(links)); + print('搜索关键词:'+wd); + print('过滤前:'+plays.length); + plays = plays.filter(it=>it.includes(wd)); + print('过滤后:'+plays.length); + print(plays); + let new_group = gen_group_dict(plays); + groupDict = Object.assign(groupDict,new_group); + // 搜索分组结果存至本地方便二级调用 + setItem('groupDict',JSON.stringify(groupDict)); + let _list = []; + + + // plays.forEach((it)=>{ + // _list.push({ + // 'vod_name':it.split(',')[0], + // 'vod_id':it.split(',')[1].trim()+'$'+it.split(',')[0].trim()+'#search#', + // 'vod_pic':def_pic, + // }) + // }); + + Object.keys(groupDict).forEach((it)=>{ + _list.push({ + 'vod_name':it, + 'vod_id':it+'$'+wd+'#search#', + 'vod_pic':def_pic, + }); + }); + return JSON.stringify({ + 'list': _list + }); +} + +// 导出函数对象 +export default { + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search +}