- PVSM.RU - https://www.pvsm.ru -

Обход блокировок adblock, и блокировка обхода блокировки

В статье рассматривается один из эффективных методов противодействию adblock, и обход этого метода. Этот круг вечен – но, похоже, рекламщики вырвались вперёд!

Обход блокировок adblock, и блокировка обхода блокировки - 1

Как-то раз на одном сайте администрация вежливо попросила пользователей добавить сайт в исключения адблока. Я, как сознательный пользователь, это сделал – но появившаяся реклама через какое-то время стала совсем не похожа на допустимую рекламу [1], и я включил адблок снова. К моему удивлению, реклама не исчезла – и я стал разбираться, в чём тут дело.

1. Обход adblock со стороны разработчиков:

Способ обхода adblock, который применили разработчики сайта, оказался очень эффективным: они помещали рекламу в div со случайным переменным классом, который менялся при каждой перезагрузке страницы. Также были убраны все атрибуты, по которым можно было идентифицировать div или рекламу внутри: никаких постоянных id элементов, изображение рекламы подгружается с хостинга [2], на котором хранятся полезные картинки. Вышестоящий div содержит много полезной информации, так что его тоже не заблокируешь.

Случайный переменный класс для рекламного элемента – именно за этим, как мне кажется, будущее интернет-рекламы. По крайней мере, при огромной аудитории сайта – в стандартных подписках адблока эта реклама не блокируется до сих пор.

2. Блокировка рекламы пользователем, в обход обхода adblock:

Пришлось создать правило, исключающее вложенные полезные элементы. В описании создания фильтров для adblock нигде про это не рассказывается, поэтому незнакомые с CSS люди вряд ли смогут это сделать. Может, моя статья им в этом поможет.

Для вложенных элементов в adblock используется следующая конструкция:

div.внешний_класс > div.внутренний_класс

Для исключения элементов по какому-то атрибуту используется конструкция not:

div:not(.полезный_класс)

Таким образом, искомое правило выглядит так:

имя_сайта##div.sidebar_right > div:not(.block)

Это позволяет заблокировать все вложенные в sidebar_right элементы, за исключением тех, которые имеют класс block. Задача была решена – что дальше?

3. Обход такой хитрой блокировки со стороны разработчиков:

Обойти такую блокировку можно, модифицировав движок сайта. Например, если и вышестоящий контейнер, и вложенные полезные div тоже будут иметь переменные имена классов, в адблоке просто не будет механизмов для их идентифицирования. Так что, повторюсь – именно за таким подходом я вижу будущее рекламы, в то время как всё больше пользователей устанавливают фильтры [3], а адблок начинает рекламировать самого себя [4].

И, напоследок – ещё один эффективный способ для web-мастеров: можно просто добавлять ненавязчивую рекламу [1], тогда пользователи намного лояльнее начнут относиться к ней.

Автор: caveeagle

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/brauzery/102765

Ссылки в тексте:

[1] допустимую рекламу: https://adblockplus.org/ru/acceptable-ads#criteria

[2] хостинга: https://www.reg.ru/?rlink=reflink-717

[3] всё больше пользователей устанавливают фильтры: http://geektimes.ru/post/251726/

[4] рекламировать самого себя: http://habrahabr.ru/post/191414/

[5] Источник: http://geektimes.ru/post/265374/