提交 bfa714a9 编写于 作者: H hjdhnx

优化drpy,增加二级访问前属性

上级 a99e1fca
......@@ -79,6 +79,8 @@ var rule = {
推荐:'.col-sm-6;h3&&Text;img&&data-src;.date&&Text;a&&href',
// 类似海阔一级 列表;标题;图片;描述;链接;详情 其中最后一个参数选填
一级:'.col-sm-6;h3&&Text;img&&data-src;.date&&Text;a&&href',
//二级发起访问前进行js处理。解决特殊情况一级给出的链接非二级真实源码而是前端重定向链接的源码
二级访问前:'log(MY_URL);let jump=request(MY_URL).match(/href="(.*?)"/)[1];log(jump);MY_URL=urljoin2(MY_URL,jump)',
// 二级可以是*,表示规则无二级,直接拿一级的链接进行嗅探
// 二级 title: 片名;类型
// 二级 desc: 主要信息;年代;地区;演员;导演
......
###### 2023/02/15
- [X] 3.9.35beta4 drpy.js和drpy2.js增加二级访问前属性,可以自定义js重新赋值正确的二级详情页地址
###### 2023/01/03
- [X] 3.9.34 聚搜功能优化,设置中心增加搜索条数设置,默认24条。关联未来功能里的排序顺序进行搜索取数
###### 2022/12/26
......
var rule={
title:'无名小站',
host:'https://blssv.com',
// homeUrl:'/',
url:'/vodshow-fyclass/page/fypage/',
searchUrl:'/vodsearch/**----------fypage---/',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'UC_UA',
},
class_name:'电影&剧集&综艺&动漫&记录',
class_url:'1&2&3&4&5',
play_parse:true,
detailUrl:'',
lazy:"",
limit:6,
推荐:'.index_vod;.vod_item;.vod_title&&Text;.lazyload&&data-src;.vod_remarks&&Text;a&&href',
double:true, // 推荐内容是否双层定位
一级:'.mdui-m-t-2&&li;.star-up-name&&Text;.lazy&&data-original;.vod_remarks&&Text;a&&href',
二级访问前:'log(MY_URL);let jump=request(MY_URL).match(/href="(.*?)"/)[1];log(jump);MY_URL=urljoin2(MY_URL,jump)',
二级:{
"title":".video-titlewraper&&h1&&Text;.inline_item:eq(1)&&Text",
"img":".lazyload&&data-original",
"desc":";;;.inline_item:eq(2)&&Text;.inline_item:eq()&&Text",
"content":".module-info-introduction&&Text",
"tabs":".vod_play_list&&.mdui-panel-item-title",
"lists":".mdui-panel-item-body:eq(#id)&&.mdui-btn-raised"},
搜索:'body li.vod_item;*;*;*;*',
}
\ No newline at end of file
......@@ -54,7 +54,7 @@ function pre(){
}
let rule = {};
const VERSION = 'drpy1 3.9.32 20221219';
const VERSION = 'drpy1 3.9.35 20230215';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -1721,6 +1721,14 @@ function detailParse(detailObj){
let tab_exclude = detailObj.tab_exclude;
let html = detailObj.html||'';
MY_URL = url;
if(detailObj.二级访问前){
try {
print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`);
eval(detailObj.二级访问前.trim().replace('js:',''));
}catch (e) {
print(`二级访问前执行代码出现错误:${e.message}`)
}
}
// console.log(MY_URL);
// setItem('MY_URL',MY_URL);
if(p==='*'){
......@@ -2100,6 +2108,7 @@ function playParse(playObj){
rule.searchUrl = rule.searchUrl||'';
rule.homeUrl = rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):(rule.homeUrl||rule.host);
rule.detailUrl = rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;
rule.二级访问前 = rule.二级访问前||'';
if(rule.url.includes('[')&&rule.url.includes(']')){
let u1 = rule.url.split('[')[0]
let u2 = rule.url.split('[')[1].split(']')[0]
......@@ -2225,6 +2234,7 @@ function detail(vod_url) {
orId: orId,
url:url,
二级:rule.二级,
二级访问前:rule.二级访问前,
detailUrl:detailUrl,
fyclass:fyclass,
tab_exclude:rule.tab_exclude,
......
此差异已折叠。
......@@ -35,7 +35,7 @@ function pre(){
let rule = {};
let vercode = typeof(pdfl) ==='function'?'drpy2.1':'drpy2';
const VERSION = vercode+' 3.9.32 20221219';
const VERSION = vercode+' 3.9.35 20230215';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -1614,6 +1614,14 @@ function detailParse(detailObj){
let tab_exclude = detailObj.tab_exclude;
let html = detailObj.html||'';
MY_URL = url;
if(detailObj.二级访问前){
try {
print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`);
eval(detailObj.二级访问前.trim().replace('js:',''));
}catch (e) {
print(`二级访问前执行代码出现错误:${e.message}`)
}
}
// console.log(MY_URL);
// setItem('MY_URL',MY_URL);
if(p==='*'){
......@@ -1959,6 +1967,7 @@ function init(ext) {
rule.searchUrl = rule.searchUrl||'';
rule.homeUrl = rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):(rule.homeUrl||rule.host);
rule.detailUrl = rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;
rule.二级访问前 = rule.二级访问前||'';
if(rule.url.includes('[')&&rule.url.includes(']')){
let u1 = rule.url.split('[')[0]
let u2 = rule.url.split('[')[1].split(']')[0]
......@@ -2084,6 +2093,7 @@ function detail(vod_url) {
orId: orId,
url:url,
二级:rule.二级,
二级访问前:rule.二级访问前,
detailUrl:detailUrl,
fyclass:fyclass,
tab_exclude:rule.tab_exclude,
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册