Как Adblock Plus работает в Chrome?


Как рекламные блоки adblock plus блокируют в Интернете? Я видел, как он вводил некоторые css, которые скрывали рекламу, но я думаю, что он делает больше, чем это, например, блокирует http-запрос.



Ответ 1

Они дают краткое представление об этом здесь: http://chromeadblock.org/extensions/adblock-for-chrome/

Однако никаких реальных деталей. Я думаю, что они делают, чтобы проверить класс css и id для блогов, например: реклама, реклама, спонсируемые.... Кроме того, они будут иметь список основных рекламных серверов, таких как AdWords и т.д., И просто блокировать загрузку этих IP/доменов. Впоследствии кажется, что он вычисляет размеры удаленного объявления и заполняет его пустым CSS.

Возможно, это не то, как они это делают, но так я бы это сделал.

Ответ 2

Adblock Plus имеет два механизма для блокировки контента на веб-сайтах:

Скрытие элемента. На веб-сайте вводится фрагмент CSS, который позволяет скрыть элементы, которые должны быть заблокированы. Таким образом, объявления полностью удаляются с отображаемой страницы, так что области, используемые в других целях для рекламы, теперь будут использоваться для фактического содержимого веб-страницы, и даже контент, являющийся частью самой веб-страницы (например, текстовых объявлений), может быть заблокирован. Однако это не предотвращает загрузку ресурсов в первую очередь.

Блокировка запроса. Запросы HTTP-запросов на извлечение ресурсов, которые должны быть заблокированы, будут предотвращены. Это ускорит загрузку страницы, уменьшит трафик и даже позволит блокировать содержимое, загруженное из Flash, например видеообъявления на YouTube.

Оба элемента, которые скрываются на данных веб-сайтах и ​​URL-адреса для блокировки, контролируются списками фильтров. По умолчанию Adblock Plus будет использовать EasyList. Но вы можете настроить собственные правила фильтрации или настроить другие списки фильтров.

Ответ 3

Вот как это делается: https://adblockplus.org/en/faq_internal#elemhide

Они просто отключают блок adblock со списком идентификаторов, которые у них есть в таблице стилей пользовательского агента, то есть на вашем уровне браузера с его JS.