uBlock Origin 网络过滤引擎详细说明 - fang5566/uBlock GitHub Wiki

概览

uBlock Origin 的网络过滤引擎概览

动态 URL 过滤规则

优点:

  • 创建和删除动态 URL 规则所花费的开销很少。
  • 优先级高于动态过滤规则和静态过滤规则。
    • 适用于精细化诊断和修复被动态过滤规则和静态规则破坏的网站。
    • 适用于创建规则以覆盖已有的动态过滤规则和静态规则。
  • 用鼠标在界面一指一点即可方便地管理规则。

缺点:

  • 只能匹配以目标 URL 打头的 URL。
  • 无法通过过滤规则列表加载。

动态过滤规则

优点:

  • 创建和删除动态过滤规则所花费的开销很少。
  • 优先级高于静态过滤规则。
  • 用鼠标在界面一指一点即可方便地管理规则。

缺点:

  • 规则作用范围广,只能是整个站点或特定几种类型。
  • 无法通过过滤规则列表加载。

静态过滤规则

优点:

  • 语法灵活,作用目标可从非常宽泛到非常精准,可在任意位置使用通配符。
  • 支持修饰规则(用于移除 DOM 元素)。
  • 可通过过滤规则列表加载,便于使用来自社区支持的过滤规则列表。
  • 兼容性好,可在其他支持 ABP 规则语法的过滤工具中使用。

缺点:

如果两者都是声明性的,为什么规则是“动态的”而过滤规则是“静态的”呢?

“静态”意思是它在使用前必须提前被“编译”好,而“dynamic”则是它可以在运行期间轻松修改:

  • 规则(Rules):你可以在用户界面简单点击鼠标来设置规则,创建/删除它们几乎没有开销。
  • 过滤规则(Filters):它们必须先被重新载入内存后才能添加/删除。