提交 8f1ff4d3 编写于 作者: H hjdhnx

升级了

上级 72b581f4
......@@ -53,7 +53,8 @@
{"key":"mjxq_spider","name":"🌏美剧星球(SP)","type":3,"api":"csp_Mjxq","searchable":1,"quickSearch":1,"filterable":1},
{"key":"csp_Nbys","name":"📺泥巴(SP需翻墙)","type":3,"api":"csp_Nbys","searchable":1,"quickSearch":1,"filterable":1},
{"key":"csp_Cokemv","name":"🚗Cokemv(SP)","type":3,"api":"csp_Cokemv","searchable":1,"quickSearch":1,"filterable":1},
{"key":"if101资源","name":"✈️if101(海外推荐)","type":0,"api":"https://demo.if101.tv/api.php/provide/vod/at/xml","searchable":1,"quickSearch":0,"filterable":0},
# {"key":"if101资源","name":"✈️if101(海外推荐)","type":0,"api":"https://demo.if101.tv/api.php/provide/vod/at/xml","searchable":1,"quickSearch":0,"filterable":0},
{"key":"海外看资源","name":"海外看(海外推荐)","type":0,"api":"https://haiwaikan.com/api.php/provide/vod/at/xml","searchable":1,"quickSearch":0,"filterable":0},
# {"key":"push_agent","name":"🍭推送(阿里)","type":3,"api":"csp_PushAgent","searchable":0,"quickSearch":0,"filterable":0,"ext":"{{ali_token}}"},
{"key": "push_agent","name": "推送(爱优腾/阿里云盘/磁力链接)","type": 3,"api": "csp_PushAgent","searchable":0,"quickSearch": 0,"filterable":0,"ext": "{{ali_token}}","plugin":"{{host}}/txt/jar/0906.jar"},
{"key":"csp_GitCafe","name":"小纸条","type":3,"api":"csp_Gitcafe","searchable":1,"quickSearch":1,"filterable":0,"ext":"{{ali_token}}"},
......@@ -129,7 +130,7 @@
#优质资源
{"key":"U酷资源","name":"U酷资源(优)","type":1,"api":"https://api.ukuapi.com/api.php/provide/vod/","searchable":1,"quickSearch":1},
{"key":"看看资源","name":"看看资源(优)","type":1,"api":"https://zy.hikan.xyz/api.php/provide/vod/","searchable":1,"quickSearch":1},
{"key":"一帆资源(VPN)","name":"一帆资源(VPN)(优)","type":1,"api":"http://api.if101.tv/v1/vod?ac=list","searchable":0,"quickSearch":0},
# {"key":"一帆资源(VPN)","name":"一帆资源(VPN)(优)","type":1,"api":"http://api.if101.tv/v1/vod?ac=list","searchable":0,"quickSearch":0},
{"key":"789盘","name":"789盘(优)","type":1,"api":"https://www.rrvipw.com/api.php/provide/vod/","searchable":1,"quickSearch":1},
{"key":"多多资源2","name":"多多资源2(优)","type":1,"api":"https://a.7dyu.cn/api.php/provide/vod/","searchable":1,"quickSearch":1},
{"key":"土剧TV","name":"土剧TV(优)","type":1,"api":"http://tujutv.top/api.php/provide/vod/","searchable":1,"quickSearch":1},
......
文件已添加
无法预览此类型文件
......@@ -206,6 +206,7 @@ class CMS:
self.二级 = rule.get('二级','')
self.搜索 = rule.get('搜索','')
self.推荐 = rule.get('推荐','')
self.图片来源 = rule.get('图片来源','')
self.encoding = encoding
self.timeout = round(int(timeout)/1000,2)
self.filter = rule.get('filter',[])
......@@ -675,9 +676,12 @@ class CMS:
except Exception as e:
logger.info(f'首页内容获取失败:{e}')
return self.blank()
if self.图片来源:
for video in videos:
if video.get('vod_pic','') and str(video['vod_pic']).startswith('http'):
video['vod_pic'] = f"{video['vod_pic']}{self.图片来源}"
result['list'] = videos
print(videos)
# print(videos)
result['no_use'] = {
'code': 1,
'msg': '数据列表',
......@@ -850,7 +854,12 @@ class CMS:
except Exception as e:
print(f'发生了错误:{e}')
pass
# print(videos)
if self.图片来源:
for video in videos:
if video.get('vod_pic','') and str(video['vod_pic']).startswith('http'):
video['vod_pic'] = f"{video['vod_pic']}{self.图片来源}"
print(videos)
limit = 40
cnt = 9999 if len(videos) > 0 else 0
result['list'] = videos
......@@ -1135,6 +1144,9 @@ class CMS:
vod = self.二级渲染(p,detailUrl=detailUrl,orId=orId,url=url,vod=vod,show_name=show_name,jsp=jsp,fyclass=fyclass)
except Exception as e:
logger.info(f'{self.getName()}获取单个详情页{detailUrl}出错{e}')
if self.图片来源:
if vod.get('vod_pic','') and str(vod['vod_pic']).startswith('http'):
vod['vod_pic'] = f"{vod['vod_pic']}{self.图片来源}"
if not vod.get('vod_id'):
vod['vod_id'] = orId
# print(vod)
......@@ -1300,6 +1312,10 @@ class CMS:
# print(videos)
except Exception as e:
logger.info(f'搜索{self.getName()}发生错误:{e}')
if self.图片来源:
for video in videos:
if video.get('vod_pic','') and str(video['vod_pic']).startswith('http'):
video['vod_pic'] = f"{video['vod_pic']}{self.图片来源}"
if show_name and len(videos) > 0:
for video in videos:
video['vod_name'] = self.id + ' '+video['vod_name']
......
......@@ -5,7 +5,7 @@ var rule={
url:'/index.php/vod/show/id/fyclass/page/fypage.html',
searchUrl:'/index.php/vod/search.html?wd=**',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
quickSearch:1,//是否启用快速搜索,
filterable:0,//是否启用分类筛选,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'MOBILE_UA',
......@@ -16,9 +16,9 @@ var rule={
play_parse:true,
lazy:'',
limit:6,
推荐:'body&&.hl-list-wrap;ul&&li;a&&title;.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href',
推荐:'body&&.hl-list-wrap;ul&&li;*;*;*;*',
double:true, // 推荐内容是否双层定位
一级:'.hl-vod-list&&li;a&&title;.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href',
二级:{"title":".hl-dc-title&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(0)&&Text","img":".hl-lazy&&data-original","desc":".hl-col-xs-12&&em&&.hl-text-muted:eq(-2)&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(1)&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(2)&&Text","content":".hl-content-text&&Text","tabs":".hl-plays-wrap","lists":".hl-plays-list:eq(#id) li"},
搜索:'.hl-list-wrap&&ul&&li;h3&&Text;.hl-lazy&&data-original;.hl-item-title:eq(0)&&Text;a&&href',
二级:{"title":"h2.hl-dc-title&&Text;.hl-full-box&&ul&&li:eq(6) a&&Text","img":".hl-lazy&&data-original","desc":";;;.hl-full-box&&ul&&li:eq(2) a&&Text;.hl-full-box&&ul&&li:eq(3) a&&Text","content":".hl-content-text&&Text","tabs":".hl-from-list&&li","lists":".hl-plays-list:eq(#id) li"},
搜索:'.hl-list-wrap&&.hl-item-pic;*;*;*;*',
}
\ No newline at end of file
3.9.15beta5
\ No newline at end of file
3.9.16
\ No newline at end of file
var rule={
title:'吼吼',
host:'https://www.hoho.tv',
// homeUrl:'/',
url:'/vod/show/fyclass/page/fypage.html',
searchUrl:'/vod/search/wd/**.html',
searchable:2,//是否启用全局搜索,
quickSearch:1,//是否启用快速搜索,
filterable:0,//是否启用分类筛选,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'MOBILE_UA',
// "Cookie": "searchneed=ok"
},
class_name:'电影&连续剧&综艺&动漫&纪录片',
class_url:'1&2&3&4&20',
//class_parse:'ul.nav-menu-items&&li;a&&Text;a&&href;./(\\d+).html',
//cate_exclude:'',
play_parse:true,
lazy:'',
limit:6,
推荐:'.module-list;.module-items&&.module-item;a&&title;.lazyloaded&&data-src;.module-item-caption&&span&&Text;a&&href',
double:true, // 推荐内容是否双层定位
一级:'.module-items&&.module-item;a&&title;.lazyloaded&&data-src;.module-item-caption&&span&&Text;a&&href',
二级:{"title":"h1.page-title&&Text;.video-info-aux&&a&&Text","img":".lazyload&&data-src","desc":";;;.video-info-items:eq(1)&&Text;.video-info-items:eq(0)&&Text","content":".vod_content&&Text","tabs":".module-tab-content&&span","lists":".module-blocklist:eq(#id) a"},
搜索:'body&&.module-search-item;h3&&a&&title;.lazyload&&data-src;*;*',
}
\ No newline at end of file
var rule={
title:'小宝影院',
host:'https://xiaoheimi.net',
// homeUrl:'/',
url:'/index.php/vod/type/id/fyclass/page/fypage.html',
searchUrl:'/index.php/vod/search.html?wd=**',
searchable:2,//是否启用全局搜索,
quickSearch:1,//是否启用快速搜索,
filterable:0,//是否启用分类筛选,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'MOBILE_UA',
// "Cookie": "searchneed=ok"
},
class_name:'电影&连续剧&综艺&动漫&纪录片',
class_url:'1&2&3&4&21',
//class_parse:'ul.nav-menu-items&&li;a&&Text;a&&href;./(\\d+).html',
//cate_exclude:'',
play_parse:true,
lazy:'',
limit:6,
推荐:'body ul.myui-vodlist;li;a&&title;a&&data-original;.text-right&&Text;a&&href',
double:true, // 推荐内容是否双层定位
一级:'ul.myui-vodlist&&li;a&&title;a&&data-original;.text-right&&Text;a&&href',
二级:{"title":"h1.title&&Text;p.data&&Text","img":"img.lazyload&&data-original","desc":";;;p.data:eq(2) a&&Text;p.data:eq(3) a&&Text","content":"span.sketch&&Text","tabs":".nav-tabs.active","lists":".myui-content__list:eq(#id) li"},
搜索:'.myui-vodlist__media.clearfix&&li;*;*;*;*',
}
\ No newline at end of file
var rule = Object.assign(muban.vfed,{
title:'欧乐影院',
host:'https://www.olevod.com',
'User-Agent':'MOBILE_UA',
class_parse:'ul.top_nav&&li;a&&Text;a&&href;./(\\d+).html',
cate_exclude:'午夜影院|VIP蓝光影院|电视直播',
推荐:'.cbox_list;ul&&li;a&&title;.lazyload&&data-original;.text_dy&&Text;a&&href',
double:true, // 推荐内容是否双层定位
一级:'.vodlist&&li;a&&title;.lazyload&&data-original;.text_dy&&Text;a&&href',
二级:{"title":".hd_tit&&Text;.content_min&&ul&&li&&Text","img":".lazyload&&data-original","desc":";;;.content_min&&ul&&li:eq(2) a&&Text;.content_min&&ul&&li:eq(3) a&&Text","content":".context&&span&&Text","tabs":".play_source_tab&&.active","lists":".content_playlist:eq(#id) li"},
搜索:'.vodlist&&li;*;*;*;*',
});
\ No newline at end of file
......@@ -33,6 +33,7 @@ var rule = {
}],
lazy:'',
double:true,
图片来源:'@Referer=http://www.jianpianapp.com@User-Agent=jianpian-version350',
推荐:'json:data;room;*;cover;*;*',
一级:'json:data;title;path;playlist.title;id',
二级:{
......
var rule={
title:'饭团',
模板:'首图',
host:'https://fositv.com',
// homeUrl:'/',
url:'/vodtype/fyclass-fypage.html',
searchUrl:'/vodsearch/-------------.html?wd=**',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
filterable:0,//是否启用分类筛选,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'MOBILE_UA',
// "Cookie": "searchneed=ok"
},
class_parse:'.dropdown-box&&ul&&li;a&&Text;a&&href;.*/(.*?).html',
play_parse:true,
lazy:'',
limit:6,
推荐:'.myui-panel_bd;&&li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href',
double:true, // 推荐内容是否双层定位
一级:'.myui-vodlist&&li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href',
二级:{"title":".text-fff&&Text","img":".lazyload&&data-original","desc":".col-pd.text-collapse&&p:eq(1)&&Text; .col-pd.text-collapse&&p:eq(2)&&Text; .col-pd.text-collapse&&p:eq(0)&&Text","content":".sketch&&Text","tabs":".nav&&li","lists":".myui-content__list:eq(#id) li"},
搜索:'.myui-panel_bd&&ul&&li;h4&&Text;lazyload&&data-original;a&&href',
url:'/vod____type/fyclass-fypage.html',
二级:{"title":".text-fff&&Text;.myui-player__data p&&Text","img":"","desc":".myui-player__data p&&Text;;;.text-collapse p:eq(1)&&Text;.text-collapse p:eq(0)&&Text","content":".data&&Text","tabs":".nav-tabs:eq(0) li","lists":".myui-content__list:eq(#id) li"},
searchUrl:'/vod_search/-------------.html?wd=**',
}
\ No newline at end of file
......@@ -33,7 +33,7 @@ function init_test(){
}
let rule = {};
const VERSION = '3.9.15beta1';
const VERSION = '3.9.16';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -976,6 +976,7 @@ function checkHtml(html,url,obj){
if(/\?btwaf=/.test(html)){
let btwaf = html.match(/btwaf(.*?)"/)[1];
url = url.split('#')[0]+'?btwaf'+btwaf;
print('宝塔验证访问链接:'+url);
html = request(url,obj);
}
return html
......@@ -1270,6 +1271,13 @@ function homeVodParse(homeVodObj){
let t2 = (new Date()).getTime();
console.log('加载首页推荐耗时:'+(t2-t1)+'毫秒');
// console.log(JSON.stringify(d));
if(rule.图片来源){
d.forEach(it=>{
if(it.vod_pic&&it.vod_pic.startsWith('http')){
it.vod_pic = it.vod_pic + rule.图片来源;
}
});
}
return JSON.stringify({
list:d
})
......@@ -1397,6 +1405,13 @@ function categoryParse(cateObj) {
console.log(e.message);
}
}
if(rule.图片来源){
d.forEach(it=>{
if(it.vod_pic&&it.vod_pic.startsWith('http')){
it.vod_pic = it.vod_pic + rule.图片来源;
}
});
}
// print(d);
return d.length<1?'{}':JSON.stringify({
'page': parseInt(cateObj.pg),
......@@ -1515,6 +1530,14 @@ function searchParse(searchObj) {
return '{}'
}
}
if(rule.图片来源){
d.forEach(it=>{
if(it.vod_pic&&it.vod_pic.startsWith('http')){
it.vod_pic = it.vod_pic + rule.图片来源;
}
});
}
// print(d);
return JSON.stringify({
'page': parseInt(searchObj.pg),
'pagecount': 10,
......@@ -1737,6 +1760,9 @@ function detailParse(detailObj){
}
vod.vod_play_url = vod_play_url;
}
if(rule.图片来源 && vod.vod_pic && vod.vod_pic.startsWith('http')){
vod.vod_pic = vod.vod_pic + rule.图片来源;
}
if(!vod.vod_id){
vod.vod_id = vod_id;
}
......@@ -1889,6 +1915,7 @@ function playParse(playObj){
rule.timeout = rule.timeout||5000;
rule.encoding = rule.编码||rule.encoding||'utf-8';
rule.图片来源 = rule.图片来源||'';
rule.play_json = rule.hasOwnProperty('play_json')?rule.play_json:[];
if(rule.headers && typeof(rule.headers) === 'object'){
try {
......
此差异已折叠。
......@@ -51,6 +51,8 @@
- [X] 新增几个源 包括虎牙直播
- [X] 设置中心增加仙人模式开关(自动识别不同设备返回不同的drpy接口,关闭的话只会走drpy.min.js)
- [X] 3.9.15beta5 修复后台管理无法进入的bug,规定js源必须包含 var rule字符,不然不识别。中间仅有一个空格
- [X] 3.9.16 增加源属性:图片来源 荐片源图片带上图片来源(目前仅爱佬版tvb可用)
- [X] 优化饭团源,增加其他几个飞机源
###### 2022/10/22
- [X] 新增几个直播源
- [X] 优化没有二级的情况自动带入一级图片和标题 @@分割
......@@ -393,6 +395,9 @@ var rule = {
// 首页推荐显示数量
limit:6,
double:true,//是否双层列表定位,默认false
// 对图片加了referer验证的有效,海阔专用,普通规则请勿填写此键值
图片来源:'@Referer=http://www.jianpianapp.com@User-Agent=jianpian-version350',
// 类似海阔一级 列表;标题;图片;描述;链接;详情 其中最后一个参数选填
// 如果是双层定位的话,推荐的第2段分号代码也是第2层定位列表代码
推荐:'.col-sm-6;h3&&Text;img&&data-src;.date&&Text;a&&href',
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册