Skip to content

Redia 高级路径替换语法教程

本文档详细介绍 Redia 系统中 Emby Reverse、Drive115 和 Drive123 模块使用的路径替换、复制小号和随机选择语法,帮助用户灵活配置云盘路径映射。

目录


路径替换语法

基本格式

使用 =>(空格 + 双等号 + 大于号 + 空格)来分隔源路径和目标路径。

源路径 => 目标路径

工作原理

系统会按配置顺序遍历所有路径替换规则,找到第一个匹配的规则后执行替换,然后停止继续匹配后续规则。

示例

示例 1:基本路径替换

/CloudNAS/115open => 115open

说明:将路径前缀 /CloudNAS/115open 替换为 指定的网盘115open

示例 2:URL 路径替换

http://192.168.9.89:19798/static/http/192.168.9.89:19798/False/%2F115open => /115open

说明

  • 支持 HTTP/HTTPS URL 的路径替换
  • 协议部分会被系统正确处理
  • URL 编码的路径会被自动解码

示例 3:清空路径前缀

/old/path => ""

说明

  • 使用空字符串 "" 可以移除路径前缀
  • 例如:/old/path/file.mp4 会被替换为 /file.mp4

示例 4:多行配置

在配置文件中,可以配置多行路径替换规则:

/CloudNAS/115open => 115open
/CloudNAS/123 => 123
/CloudNAS/阿里云盘 => 阿里云盘

注意:系统会按顺序从上到下匹配,找到第一个匹配的规则后立即停止,因此建议将更具体、更精确的规则放在前面。


复制小号语法

基本格式

使用 >>(空格 + 双大于号 + 空格)来分隔源云盘和目标云盘,实现跨账号文件复制(秒传)。

源云盘名称 >> 目标云盘名称

工作原理

  1. 系统识别到 >> 语法后,会从源云盘复制文件到目标云盘
  2. 使用秒传技术(upload_file_init),无需实际下载上传,速度极快
  3. 支持多个目标云盘,用逗号分隔,系统会随机打乱顺序尝试

示例

/CloudNAS/115 => 115主号 >> 115小号1/电影

说明

  • 当路径为 115主号/电影/xxx.mp4
  • 系统会从 115主号 云盘复制文件到 115小号1/电影 目录下
  • 目标路径为 115小号1/电影/xxx.mp4
  • /电影 可以自行指定,留空则默认复制到根目录的 /Redia 文件夹下

多目标示例

/CloudNAS/115 => 115主号 >> 115小号1,115小号2,115小号3

系统会随机选择一个目标小号进行复制。


随机选择语法

基本格式

在云盘名称中使用逗号分隔多个云盘名称,系统会随机打乱顺序并依次尝试。

云盘名称1,云盘名称2,云盘名称3

工作原理

  1. 系统检测到逗号分隔的多个云盘名称
  2. 使用 random.shuffle() 随机打乱顺序
  3. 依次尝试每个云盘,直到成功获取下载链接
  4. 如果所有云盘都失败,返回 None

示例

示例 1:基本随机选择

重要提示:成功的前提是待选网盘的指定位置都有相同的文件。

/CloudNAS/115open => 115账号1,115账号2,115账号3

说明

  • 系统会随机打乱顺序,例如:[115账号2, 115账号1, 115账号3]
  • 先尝试 115账号2,如果失败则尝试 115账号1,以此类推
  • 直到成功获取下载链接或全部失败

示例 2:中文逗号支持

/115账号1,115账号2,115账号3/电影/xxx.mp4

说明

  • 系统支持中文逗号(),会自动转换为英文逗号
  • 效果与使用英文逗号完全相同

组合使用示例

示例 1:路径替换 + 复制小号 + 随机选择

/CloudNAS/115open => 115主号 >> 115小号1,115小号2,115小号3

执行流程

  1. 路径替换/CloudNAS/115open/电影/xxx.mp4 => 115主号/电影/xxx.mp4
  2. 复制小号:从 115主号 复制到随机选择的小号(例如:115小号2
  3. 返回结果:返回 115小号2 的下载链接

示例 2:路径替换 + 随机选择

/CloudNAS/115open => /115账号1,/115账号2,/115账号3

执行流程

  1. 路径替换/CloudNAS/115open/电影/xxx.mp4 => 115账号1/电影/xxx.mp4(或随机选择的账号)
  2. 随机选择:系统随机选择一个账号尝试获取下载链接
  3. 返回结果:返回成功账号的下载链接

注意事项

1. 路径替换规则顺序

  • 系统按配置顺序从上到下匹配
  • 找到第一个匹配的规则后立即停止
  • 建议:将更具体、更精确的规则放在前面,避免被通用规则提前匹配

2. 云盘名称匹配

  • 云盘名称必须与配置中设置的 name 字段完全匹配
  • 区分大小写,例如 115主号115主號 是不同的
  • 支持中英文名称,但必须完全一致

3. 复制小号限制

  • 目前仅支持 115 到 115123 到 123 的跨账号复制
  • 不支持跨平台复制(如 115 到 123、115 到阿里云盘等)

4. 随机选择机制

  • 每次请求都会重新随机打乱顺序
  • 如果某个云盘失败,会自动尝试下一个
  • 所有云盘都失败时,返回 None
  • 注意:随机选择会增加响应时间,建议合理配置云盘数量

5. 特殊字符处理

  • 路径中的特殊字符会被自动 URL 编码/解码
  • 支持中文路径和特殊字符
  • 空格、中文字符等都会被正确处理

6. 性能考虑

  • 随机选择会依次尝试,可能增加响应时间
  • 建议将成功率高的云盘放在前面(虽然顺序会被打乱,但可以优先尝试)
  • 复制小号操作需要调用 API,可能有一定延迟(通常为 1-3 秒)
  • 建议合理配置规则数量,避免过多规则影响性能

7. 语法符号要求

  • =>>> 前后必须有空格
  • 逗号分隔多个云盘时,逗号前后可以有空格(可选)
  • 格式错误会导致规则无法识别

常见问题

Q1: 为什么路径替换没有生效?

A: 请检查以下几点:

  1. 格式检查:路径替换规则格式是否正确(=> 前后必须有空格)
  2. 路径匹配:源路径是否完全匹配(区分大小写,包括前后斜杠)
  3. 规则顺序:规则顺序是否正确(更具体的规则应在前面)
  4. 配置保存:是否已保存配置文件并重启服务

Q2: 复制小号失败怎么办?

A: 可能的原因及解决方法:

  1. 文件不存在:目标账号中没有该文件(秒传需要文件已存在),需要先在目标账号中上传该文件
  2. Cookies 失效:Cookies 失效,需要重新配置源账号和目标账号的 Cookies
  3. 配置错误:源账号或目标账号配置错误,检查云盘名称是否正确
  4. 网络问题:网络连接不稳定,检查网络连接

Q3: 随机选择总是失败?

A: 请检查以下内容:

  1. 云盘配置:所有云盘名称是否正确配置,是否与 name 字段完全匹配
  2. 账号信息:云盘的 Cookies/账号信息是否有效,是否已过期
  3. 文件路径:文件路径在云盘中是否存在,路径是否正确
  4. 文件一致性:所有待选云盘的指定位置是否都有相同的文件

Q4: 可以同时使用多个语法吗?

A: 可以!语法可以灵活组合使用:

  • 路径替换 + 复制小号:先替换路径,再复制到小号
  • 路径替换 + 随机选择:先替换路径,再随机选择云盘
  • 复制小号 + 随机选择:复制到随机选择的目标云盘
  • 三者同时使用:路径替换 → 复制小号 → 随机选择目标

Q5: 如何调试路径替换规则?

A: 建议的调试方法:

  1. 逐步测试:先配置简单的规则测试是否生效
  2. 查看日志:查看系统日志,了解规则匹配情况
  3. 单独测试:将复杂规则拆分为多个简单规则分别测试
  4. 检查格式:确保所有语法符号格式正确

Q6: 复制小号需要多长时间?

A: 复制小号使用秒传技术,通常需要:

  • 成功情况:1-3 秒(取决于网络和 API 响应速度)
  • 失败情况:立即返回失败(文件不存在或配置错误)
  • 注意:如果目标账号中没有该文件,秒传会失败,需要先上传文件

总结

Redia 的高级路径替换语法提供了强大的路径映射和云盘管理功能,通过合理配置路径替换、复制小号和随机选择语法,可以实现灵活的云盘资源管理和负载均衡。建议在使用时:

  1. 仔细阅读本文档,理解各语法的原理和限制
  2. 从简单配置开始,逐步增加复杂度
  3. 注意规则顺序和格式要求
  4. 遇到问题时参考常见问题部分进行排查

如有其他问题,欢迎查阅相关文档或联系技术支持。