Фильтр для uBlock

360
megas

Я использую блокировщик рекламы uBlock в Firefox. Первоначально у меня есть бесплатные фильтры, такие как:

search.yahoo.com###yui_3_10_0_1_1531993940314_95  search.yahoo.com###yui_3_10_0_1_1532027806134_88 search.yahoo.com###yui_3_10_0_1_1532084576415_87 

Я предполагал, что все последующие страницы будут иметь одинаковые идентификаторы. Поэтому я хочу создать общий фильтр, чтобы он мог отфильтровывать рекламу со всех следующих страниц, что-то вроде этого:

search.yahoo.com###yui_3_10_0_1_153* 

Но я не могу понять из документации uBlock, что такое синтаксис для этой задачи.

Как создать фильтр для uBlock?

0

1 ответ на вопрос

2
grawity

Вам нужно будет посмотреть документацию по селектору CSS . uBlock добавляет несколько собственных расширений («процедурных» селекторов), но по-прежнему имеет тот же общий синтаксис и функции, что и CSS.

В вашем примере ##это разделитель и #yui_3_10_0_1_1532027806134_88CSS-селектор - #префикс означает, что он соответствует id=атрибуту элемента ( селектор идентификатора ).

Селекторы идентификаторов всегда точно совпадают, но они просто сокращенно для общих селекторов атрибутов - предыдущий идентичен [id=yui_3_10_0_1_1532027806134_88].

Селекторы атрибутов сделать поддержку префикса, суффикса и подстроки с использованием ^=, $=и *=соответственно. Итак, селектор, который вы запрашиваете [id^=yui_3_10_0_1_153]:

search.yahoo.com##[id^=yui_3_10_0_1_153] 

Обратите внимание, что большое число автоматически сгенерированных идентификаторов YUI представляет собой метку времени, в частности, метку времени Unix в микросекундах. Он достигнет 1540000000000 20 октября этого года (и 1600000000000 в сентябре 2020 года, если Yahoo все еще будет к этому времени), поэтому вы должны соответствующим образом настроить фильтр uBlock.