更新 'drpy/drpy2.js'

master
src48597962 8 months ago
parent 57aa95bf6a
commit 5fa650cd0b
  1. 29
      drpy/drpy2.js

@ -283,7 +283,7 @@ function pre() {
let rule = {};
let vercode = typeof (pdfl) === 'function' ? 'drpy2.1' : 'drpy2';
const VERSION = vercode + ' 3.9.50beta31 20240617';
const VERSION = vercode + ' 3.9.50beta33 20240709';
/**
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
@ -1060,8 +1060,31 @@ function fixAdM3u8Ai(m3u8_url, headers) {
let s = m3u8.trim().split('\n').filter(it => it.trim()).join('\n');
let ss = s.split('\n')
//找出第一条播放地址
let firststr = ss.find(x => !x.startsWith('#'));
//let firststr = ss.find(x => !x.startsWith('#'));
let firststr = '';
let maxl = 0;//最大相同字符
let kk = 0;
let kkk = 2;
let secondstr = '';
for (let i = 0; i < ss.length; i++) {
let s = ss[i];
if (!s.startsWith("#")) {
if (kk == 0) firststr = s;
if (kk == 1) maxl = b(firststr, s);
if (kk > 1) {
if (maxl > b(firststr, s)) {
if (secondstr.length < 5) secondstr = s;
kkk = kkk + 2;
} else {
maxl = b(firststr, s);
kkk++;
}
}
kk++;
if (kk >= 20) break;
}
}
if (kkk > 30) firststr = secondstr;
let firststrlen = firststr.length;
//log('字符串长度:' + firststrlen);
let ml = Math.round(ss.length / 2).toString().length;//取数据的长度的位数
@ -2198,7 +2221,7 @@ function categoryParse(cateObj) {
}
}
let new_url;
new_url = cheerio.jinja2(url, {fl: fl});
new_url = cheerio.jinja2(url, {fl: fl, fyclass: cateObj.tid});
// console.log('jinjia2执行后的new_url类型为:'+typeof(new_url));
url = new_url;
}

Loading…
Cancel
Save