photo_2020-06-04_09-27-54.jpg

via 春潮频道

本文隶属于 实用工具 分类,点击分类名称可以查看更多相关文章;

主理人说

还在用API过滤节点吗?醒醒吧,本地资源解析器它不香吗?

隐忧

如大家所知,并不是每个人都能自建订阅转换API,但用第三方的API多少会有隐私顾虑(纯粹拼人品);

资源解析器

版本 Quantumult X (v1.0.8-build253) 后,作者引入了资源解析器;相比于常见的在线 API,资源解析器的最大优势:

1.完全本地解析,无暴露服务器风险;
2.无需 URLencode 步骤,直接填入原始订阅链接即可,更可直接使用中文参数(空格除外);
3.将各类服务器订阅解析成 Quantumult X 格式
4.支持 V2RayN/SSR/SS/Trojan/QuanX/Surge/https 订阅
5.超多个性化参数

使用方法

Quantumult X - 配置文件 - 编辑

1.在Quantumult X 配置文件中[general] 部分,加入:

[general]
resource_parser_url=https://raw.githubusercontent.com/KOP-XIAO/QuantumultX/master/Scripts/resource-parser.js

2.[节点]-[引用(订阅)] 左滑任意订阅 [编辑] 或右上角 [+] 新增订阅时,选择开启 [资源解析器];

Quantumult X 资源解析器 - 无需API即可本地过滤节点

3.开启 [资源解析器];

4.在订阅链接后加入解析参数,如本示例中的 #in=香港:过滤出所有香港节点;

Quantumult X 资源解析器 - 无需API即可本地过滤节点

其他参数说明

资源解析器参数说明

*注意看第4点;

1.)原始订阅链接后加 "#" , 不同参数用 "&" 连接:
你的订阅地址#in=香港+台湾&emoji=1&tfo=1

2.)"节点" 订阅 ➠ 参数说明:
info=1, 开启通知提示机场 ✈️ 流量信息(如有);
emoji=1,2 或 -1, 为添加/删除节点名中的地区 emoji 旗帜
国行设备请用 emoji=2

3.)udp=1, tfo=1, tls13=1, 分别开启 udp-relay/fast-open/tls13;
此参数对源类型为 QuanX/Surge 的链接无效
cert=0, 强制"tls-verification=false" 跳过证书验证;
延迟测试只有第一个数据时, 可尝试此参数

4.)in, out, 分别为 保留/删除 节点, 多参数用 "+" 连接(逻辑"或"), 逻辑"与"用 "." 连接, 可直接用中文, 空格用"%20"代替;如 "in=香港.IPLC.04+台湾&out=香港%20BGP"

5.)rename 重命名、删除字段, "旧名@新名", "删除字段☠️", 以及 "前缀@", "@后缀",用 "+" 连接多个参数;
如 "rename=香港@HK+[SS]@[email protected][1X]+倍率☠️"

6.)sort=1, -1, 排序参数, 分别根据节点名 正序/逆序 排列;

via https://github.com/KOP-XIAO/QuantumultX/blob/master/Scripts/resource-parser.js

反馈

有bug请反馈 @Shawn_KOP_bot
更新请关注 tg 频道 https://t.me/QuanX_API
Github 对应仓库 https://github.com/KOP-XIAO/QuantumultX

进阶玩法

节点过滤出来了?然后呢?生成策略组,届时只需在[分流]-[引用] - 某某某 分流的[策略偏好] 选该策略组即可;

使用 as-policy 参数配合资源解析器生成策略

由于该方法不灵活,已弃用;

本高阶玩法特别适合经常观看 Netflix 的同学,因为Netflix的一些政策:他们在观看Netflix的时候需要固定使用某个地域的节点,例如香港,例如新加坡

现在在 [server_remote] 配置项中使用 as-policy=static 参数,即可将订阅节点列表转换成策略组,例如我将某机场节点中包含新加坡的节点过滤出来自动生成名为新加坡的策略组(名称跟随tag),届时只需在[分流]-[引用] - Netflix 分流的[策略偏好]选该策略组即可;

详细步骤

详细步骤

1.[配置文件]-[编辑] 找到 [server_remote] 配置项;

[server_remote]

你的订阅地址#in=新加坡&out=专线, tag=新加坡, as-policy=static, img-url=https://raw.githubusercontent.com/limbopro/Zure/master/IconSet/Netflix_Letter.png, update-interval=86400, opt-parser=true, enabled=true

Quantumult X 资源解析器 - 无需API即可本地过滤节点 - 过滤包含新加坡节点同时排除其中包含专线的节点

[server_remote] 配置项中的 参数说明:

as-policy=static,将节点作为策略组;
img-url=,设置策略组图标,后面跟图标地址;
update-interval=,节点订阅更新周期;
opt-parser=,是否开启资源解析器;
enabled=,启用或禁用该节点订阅;

使用QuantumultX 内置 regex 参数以及正则表达式筛选节点并生成策略

效果与 as-policy 雷同,将需要的节点过滤出来并生成策略组策略组即包含节点/direct/proxy/reject/等一系列其他策略的混搭嵌套组合),届时只需在[分流]-[引用] - Netflix 分流的[策略偏好]选该策略组即可;更友好更灵活,且支持策略组排序

详细步骤

打开 Quantumult X - [配置文件]-[编辑] ,找到 [policy] - ,参考如下写法:

[policy]

static=Netflix, resource-tag-regex=(次元)|(MDSS), server-tag-regex=(新加坡)|(狮城), img-url=https://raw.githubusercontent.com/limbopro/Zure/master/IconSet/Netflix_Letter.png

参数说明:(Quantumult X 最新版本)

resource-tag-regex==号后面跟正则表达式,即使用正则从你所有的订阅链接的标签中筛选符合条件的订阅链接

resource-tag

resource-tag.png

如需筛选多个订阅链接,可使用|:resource-tag-regex=次元|MDSS

server-tag-regex==号后面跟正则表达式,即从上面已经筛选出来的订阅链接里再筛选出你想要的节点;

server-tag

server-tag.png

你的机场订阅肯定包含了很多很多节点,使用正则从中筛选出想要的节点;
如需筛选多个名称的节点,可使用|:server-tag-regex=新加坡|香港

上述例子中,即从我所有的订阅链接中筛选出标签中含有次元的订阅链接,然后再从次元的节点中筛选出包含新加坡的节点;

常用正则表达筛选公式:

(A).*(B)        节点名既有 A又有 B
(A)|(B)         节点名有 A 或者 B  
^((?!A).)*$     节点名不含有 A
(?!.*(A)).*(B)  节点名不含有 A,同时含有 B

正则表达式其他语法可参考正则表达式 - 语法
正则表达式30分钟入门教程正则表达式30分钟入门教程

理解正则表达式:正则表达式到底是什么东西?

在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。

很可能你使用过Windows/Dos下用于文件查找的通配符(wildcard),也就是和?。如果你想查找某个目录下的所有的Word文档的话,你会搜索.doc。在这里,*会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的需求——当然,代价就是更复杂——比如你可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是一个连字号“-”,最后是7或8位数字的字符串(像010-12345678或0376-7654321)。

via 正则表达式30分钟入门教程;

Tips

img-url= 后面的图标可以使用抠图仔的github项目:https://github.com/Koolson/Qure

鸣谢

感谢 Shawn https://github.com/KOP-XIAO/QuantumultX
感谢 抠图仔 https://github.com/Koolson/Qure
感谢 Quantumult X https://t.me/QuanXApp

最后修改:2020 年 06 月 16 日 12 : 29 PM