【Github】项目名:h2y/Shadowrocket – ADBlock – Rules:提供Shadowrocket规则与广告过滤,iOS未越狱翻墙
项目简介
这是一个已归档的项目,提供了多款针对Shadowrocket的规则,这些规则带有广告过滤功能,是为iOS未越狱设备设计的,可用于选择性地自动翻墙。规则以纯文本文件形式存在,不能提供翻墙功能本身。其生成方式是使用Python按照特定规则和模板定期自动生成,并且借助开源社区的力量不断完善。规则具有多种类型,如黑名单、白名单等不同规则的组合,还考虑了国内外网站的划分、是否包含广告过滤等多种情况。
项目目的
项目旨在为iOS未越狱设备的用户提供方便的Shadowrocket规则,帮助他们在上网时进行选择性翻墙,并且能够过滤广告,提升上网体验。
核心技术
项目使用Python按照一定规则和模板定期自动生成规则。在Shadowrocket中,每次加载规则时会生成一棵搜索树(类似对主机名从后往前的有限状态机DFA),并且有哈希缓存机制,这使得规则在匹配时即使行数较多也不会影响时间复杂度(2000行规则和50行规则在SR中均为同一量级的时间复杂度O(1))。
实践案例
例如在使用Shadowrocket应用时,用户进入[配置]页面,点击扫描二维码的按钮添加规则,再激活添加的规则文件即可使用(最好让Shadowrocket断开并重新连接一次确保新规则生效)。此外,针对不同需求有多种规则可供选择,如想将SR作为iOS全局去广告工具、iOS全局去广告 + 全局翻墙工具、海外华侨回国享受国内互联网服务等不同需求都有对应的规则。
项目总结
这个项目为iOS未越狱设备提供了丰富的Shadowrocket规则选择,从不同的网站访问需求到广告过滤需求都有所考虑。虽然项目已停止更新,但仍然有一定的参考价值。希望大家如果有任何想法或者问题可以在评论区留言,一起讨论关于Shadowrocket规则的更多可能性。