天天看點

uBlock的動态規則過濾規則書寫

uBlock具有動态和靜态兩種規則,但是它比之前的ABP等規則過濾規則強的地方就在于他的動态規則,靜态規則的文法繼承與ABP,有興趣的可以去看ABP的過濾規則https://adblockplus.org/zh_CN/filters,現在主要介紹它的動态規則,這才是讓它變成神器的主要原因

英文文檔:https://github.com/gorhill/uBlock/wiki/Dynamic-filtering:-rule-syntax

語句書寫非常簡單:分為4塊

主機位址(目前正在浏覽的網站)                 加載廣告的源位址                      請求類型                        要采取的行為

uBlock的動态規則過濾規則書寫

請求類型

  • *

    :任何類型的請求(通配符)
  • image

    : 圖檔
  • 3p

    :網頁第三方的任何請求
  • inline-script

    :内聯腳本标記,即嵌入在主文檔中的腳本
  • 1p-script

    :第一方腳本,即從目前網頁的同一域名中提取的腳本
  • 3p-script

    :第三方腳本,即從與目前網頁不同的域名中提取的腳本
  • 3p-frame

    :第三方架構,即從與目前網頁不同的域名拉出的架構元素
  • 采取的行為
  • block

    :比對的網絡請求将被阻止。
    • block

      動态過濾規則覆寫任何現有的靜态異常過濾器。
    • 是以,您可以使用它們100%确定地阻止(除非您設定另一個重寫動态過濾規則)。
  • allow

    :将允許比對網絡請求。
    • allow

       動态過濾規則會覆寫任何現有的靜态和動态塊過濾器。
    • 是以,它們最有用的是建立更細粒度的異常,并且在某個地方取消某些靜态過濾器破壞的網站。
  • noop

    :排除網絡請求受到動态過濾。
    • 它取消了動态過濾,但不取消靜态過濾。

舉例:

* * 3p-frame block

。此規則轉換為“全局阻止第三方架構”

wired.com * image block

這意味着“在通路wired.com上的網頁時阻止所有來源的圖像”。

* disqus.com * block

表示“全局阻止所有網絡請求

disqus.com

注意事項:

子域會繼承主域的過濾規則