MoviePilot-Plugins中种子关键字分类整理功能的多规则匹配机制解析
MoviePilot-Plugins MoviePilot三方插件市场 项目地址: https://gitcode.com/gh_mirrors/moviepil/MoviePilot-Plugins
在MoviePilot-Plugins项目的种子管理功能中,关键字分类整理是一个核心特性。该功能通过配置规则对种子进行自动化标签管理和分类操作。近期社区反馈了一个关于多规则匹配机制的重要问题,本文将深入解析其技术实现和优化方案。
原始匹配机制分析
最初的规则匹配系统采用"短路评估"策略:
- 系统按顺序逐条评估配置规则
- 当种子匹配到第一条符合条件的规则后立即执行对应操作
- 后续规则即使匹配也不再处理
这种设计在简单场景下效率较高,但在复杂标签管理场景中存在明显局限。例如用户需要:
- 先为"刷流"类种子添加BRUSH标签
- 再根据站点标签(如"彩虹岛")进行二次分类 由于短路机制,第二条规则永远不会被执行。
技术实现优化
项目维护者在最新提交中改进了这一机制:
- 移除了短路评估逻辑
- 改为完整遍历所有规则配置
- 每条匹配规则都会被执行
新的处理流程如下:
处理流程:
对于每个种子:
对于每条规则:
如果匹配过滤器条件 → 执行目标操作
结束规则循环
结束种子循环
配置最佳实践
基于新的匹配机制,建议采用以下配置策略:
- 标签转换规则应放在前面
- torrent_filter:
torrent_tags: ["临时标签"]
torrent_target:
add_tags: ["正式标签"]
remove_tags: ["临时标签"]
- 分类规则可放在后面
- torrent_filter:
torrent_tags: ["SITE:彩虹岛"]
torrent_target:
change_category: "彩虹岛资源"
- 特殊处理规则可灵活安排
- torrent_filter:
torrent_title: "VIP"
torrent_target:
change_priority: "高"
注意事项
- 规则顺序仍然重要,相同字段的修改操作会覆盖
- remove_tags操作会立即生效,影响后续规则匹配
- 建议先add_tags再remove_tags,避免标签丢失
- 复杂场景可配合auto_category实现智能分类
该优化使得种子管理更加灵活,能够满足各种复杂的自动化处理需求,体现了项目对用户实际使用场景的深入理解。
MoviePilot-Plugins MoviePilot三方插件市场 项目地址: https://gitcode.com/gh_mirrors/moviepil/MoviePilot-Plugins
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考