Skip to content

Commit b6c1875

Browse files
author
Taois
committed
feat:优化源,增加mergeList属性
1 parent 70dc43b commit b6c1875

17 files changed

+59
-74
lines changed

controllers/config.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,13 +190,21 @@ async function generateSiteJSON(options, requestHost, sub, pwd) {
190190
title: ruleObject.title,
191191
author: ruleObject.author,
192192
类型: ruleObject.类型 || '影视',
193+
mergeList: ruleObject.二级 === '*' || ruleObject.mergeList,
193194
searchable: ruleObject.searchable,
194195
filterable: ruleObject.filterable,
195196
quickSearch: ruleObject.quickSearch,
196197
more: ruleObject.more,
197198
logo: ruleObject.logo,
198199
lang: 'ds',
199200
});
201+
if (ruleMeta.mergeList) {
202+
if (ruleMeta.more && typeof ruleMeta.more === 'object') {
203+
ruleMeta.more.mergeList = 1;
204+
} else {
205+
ruleMeta.more = {mergeList: 1};
206+
}
207+
}
200208
// console.log('ds ruleMeta:', ruleMeta);
201209
await FileHeaderManager.writeHeader(filePath, ruleMeta);
202210
} else {
@@ -293,13 +301,21 @@ async function generateSiteJSON(options, requestHost, sub, pwd) {
293301
title: ruleObject.title,
294302
author: ruleObject.author,
295303
类型: ruleObject.类型 || '影视',
304+
mergeList: ruleObject.二级 === '*' || ruleObject.mergeList,
296305
searchable: ruleObject.searchable,
297306
filterable: ruleObject.filterable,
298307
quickSearch: ruleObject.quickSearch,
299308
more: ruleObject.more,
300309
logo: ruleObject.logo,
301310
lang: 'dr2',
302311
});
312+
if (ruleMeta.mergeList) {
313+
if (ruleMeta.more && typeof ruleMeta.more === 'object') {
314+
ruleMeta.more.mergeList = 1;
315+
} else {
316+
ruleMeta.more = {mergeList: 1};
317+
}
318+
}
303319
// console.log('dr2 ruleMeta:', ruleMeta);
304320
await FileHeaderManager.writeHeader(filePath, ruleMeta);
305321
} else {

docs/updateRecord.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@
145145
2. 修复 `cut` 逻辑错误导致的`番茄小说`二级无数据,增强字符串的`parseX`改用`JSON5`
146146
3. 新增 `网盘` 模板源及map示例
147147
4. 新收录了几个源
148-
5. 增加 `hikerSkipEr` 属性,允许海阔跳过T4源的形式二级
148+
5. 增加 `mergeList` 属性,允许海阔跳过T4源的形式二级
149149
6. 修复百度盘特殊路径(如含#)的选集解析与播放
150150

151151
### 20250919

libs/drpyS.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -708,7 +708,7 @@ async function invokeMethod(filePath, env, method, args = [], injectVars = {}) {
708708
result = await searchParseAfter(moduleObject, result, args[2]);
709709
log(`[invokeMethod js:] 搜索 ${injectVars.input} 执行完毕,结果为:`, JSON.stringify(result.list.slice(0, 2)));
710710
} else if (method === 'class_parse') {
711-
result = await homeParseAfter(result, moduleObject.类型, moduleObject.hikerListCol, moduleObject.hikerClassListCol, moduleObject.hikerSkipEr, injectVars);
711+
result = await homeParseAfter(result, moduleObject.类型, moduleObject.hikerListCol, moduleObject.hikerClassListCol, moduleObject.mergeList, injectVars);
712712
}
713713
return result;
714714
}
@@ -798,9 +798,9 @@ async function initParse(rule, env, vm, context) {
798798
if (!rule.hasOwnProperty('sniffer')) { // 默认关闭辅助嗅探
799799
rule.sniffer = false;
800800
}
801-
// 二级为*自动添加hikerSkipEr属性允许跳过形式二级
802-
if (!rule.hasOwnProperty('hikerSkipEr') && rule.二级 === '*') {
803-
rule.hikerSkipEr = 1;
801+
// 二级为*自动添加mergeList属性允许跳过形式二级
802+
if (!rule.hasOwnProperty('mergeList') && rule.二级 === '*') {
803+
rule.mergeList = 1;
804804
}
805805
rule.sniffer = rule.hasOwnProperty('sniffer') ? rule.sniffer : '';
806806
rule.sniffer = !!(rule.sniffer && rule.sniffer !== '0' && rule.sniffer !== 'false');

libs/drpysParser.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ export async function homeParse(rule) {
424424
return context;
425425
}
426426

427-
export async function homeParseAfter(d, _type, hikerListCol, hikerClassListCol, hikerSkipEr, injectVars) {
427+
export async function homeParseAfter(d, _type, hikerListCol, hikerClassListCol, mergeList, injectVars) {
428428
if (!d) {
429429
d = {};
430430
}
@@ -436,8 +436,9 @@ export async function homeParseAfter(d, _type, hikerListCol, hikerClassListCol,
436436
d.hikerClassListCol = hikerClassListCol;
437437
}
438438
// 跳过形式二级
439-
if (hikerSkipEr) {
440-
d.hikerSkipEr = hikerSkipEr;
439+
if (mergeList) {
440+
d.hikerSkipEr = mergeList;
441+
d.mergeList = mergeList;
441442
}
442443
const {
443444
classes,
@@ -1489,7 +1490,7 @@ export async function invokeWithInjectVars(rule, method, injectVars, args) {
14891490
}
14901491
break;
14911492
case 'class_parse':
1492-
result = await homeParseAfter(result, rule.类型, rule.hikerListCol, rule.hikerClassListCol, rule.hikerSkipEr, injectVars);
1493+
result = await homeParseAfter(result, rule.类型, rule.hikerListCol, rule.hikerClassListCol, rule.mergeList, injectVars);
14931494
break;
14941495
case '一级':
14951496
result = await cateParseAfter(rule, result, args[1]);

spider/js/DJ音乐[听].js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66
title: 'DJ音乐',
77
author: 'EylinSir',
88
'类型': '影视',
9+
mergeList: true,
10+
more: {
11+
mergeList: 1
12+
},
913
logo: 'https://pic.289.com/up/2023-12/20231219154340126.png',
1014
lang: 'ds'
1115
})

spider/js/兔小贝[儿].js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,18 @@
55
quickSearch: 0,
66
title: '兔小贝[儿]',
77
'类型': '影视',
8+
mergeList: 1,
9+
more: {
10+
mergeList: 1
11+
},
812
lang: 'ds'
913
})
1014
*/
1115

1216
var rule = {
1317
title: '兔小贝[儿]',
1418
host: 'https://www.tuxiaobei.com',
19+
mergeList: 1,
1520
homeUrl: '',
1621
url: '/list/mip-data?typeId=fyclass&page=fypage&callback=',
1722
detailUrl: '/play/fyid',

spider/js/啊哈DJ[听].js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
quickSearch: 0,
66
title: '啊哈DJ[听]',
77
'类型': '影视',
8+
mergeList: true,
9+
more: {
10+
mergeList: 1
11+
},
812
lang: 'ds'
913
})
1014
*/

spider/js/开眼.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
quickSearch: 0,
66
title: '开眼视频',
77
'类型': '影视',
8+
mergeList: true,
9+
more: {
10+
mergeList: 1
11+
},
812
lang: 'ds'
913
})
1014
*/

spider/js/美颜怪[擦].js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,17 @@
44
filterable: 0,
55
quickSearch: 0,
66
title: '美颜怪',
7+
author: 'LoyDgIk',
8+
'类型': '影视',
9+
mergeList: 1,
10+
more: {
11+
mergeList: 1
12+
},
713
lang: 'ds'
814
})
915
*/
1016

17+
1118
class Rule {
1219
类型 = "影视";
1320
author = "LoyDgIk";

spider/js/贝乐虎[儿].js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,18 @@
55
quickSearch: 0,
66
title: '贝乐虎[儿]',
77
'类型': '影视',
8+
mergeList: 1,
9+
more: {
10+
mergeList: 1
11+
},
812
lang: 'ds'
913
})
1014
*/
1115

1216
var rule = {
1317
类型: '影视',//影视|听书|漫画|小说
1418
title: '贝乐虎[儿]',
19+
mergeList: 1,
1520
host: 'https://vd.ubestkid.com',
1621
url: '/api/v1/bv/video#pg=fypage',
1722
homeUrl: '/api/v1/bv/video',

0 commit comments

Comments
 (0)