Пользователь
0,0
рейтинг
7 мая 2013 в 14:55

Разработка → Пилим Adblock



Стратегия


Итак, Адблок… Но здесь я буду говорить не столько о блокировке рекламы, сколько об оптимизации и правильном использовании этого интересного своей универсальностью дополнения. Не отношусь к тем, кого раздражает сама реклама — меня раздражает способ ее доставки. Точнее, меня раздражает вот что:
— утяжеление страниц и усложнение процесса их загрузки, как следствие — замедление ее;
— рост трафика (в корпоративной среде);
— шпионские скрипты, сбор личной информации;
— когда при загруженном HTML документе я еще не вижу страницы из-за задержек с подгрузкой какой-то пакости с левых серверов;
— появление процесса plugin-container, кушающего память в объемах, соизмеримых с самим браузером.
Помимо, собственно, рекламы данные проблемы создают в не меньшем объеме различные счетчики и «социальные виджеты» (новое зло, о котором веб 1.0 не знал), ведь страницы даже без рекламы содержат несколько скриптов счетчиков, а для каждой кнопки типа «мне нравится» каждой соцсети грузится свой скрипт! Потому моя стратегия будет в корне отличаться от стратегии создателей стандартных подписок для Adblock:
1) главное — не устранить рекламу, цель — уменьшение времени загрузки страниц, потребления памяти, трафика и т.п. — оптимизация "от машины", поэтому фокус внимания — на скрипты и флэш, а просто скрывать элементы директивой ## — интересно меньше всего,
2) принцип Парето-эффективности: 20% правил блокируют 80% нежелательного контента,
3) (следствие п.1 и п.2) универсальные правила, насколько это возможно!
4) сайты, на которые я не хожу / неактуальные в Этой Стране — пусть себе содержат кучу нежелательного контента, я категорически не хочу, чтобы при запросе каждого элемента с часто посещаемого сайта мой центральный процессор пробегал по мегабайту правил, которые никогда не сработают (или сработают раз в год).

Исследование


Адблок (исследованию подверглась версия для firefox) представляет из себя упакованный xpi (не распаковывается при установке), весящий 786 кб. Большая часть из этого архива (468 кб в сжатом виде, 1,3 Мб в распакованном) приходится на локализации, которые (ненужные) легко удалить из xpi тем же 7-zip. (Забегая вперед: сокращения потребления памяти в результате этой процедуры обнаружено не было, так же не повлияла и распаковка аддона).

Правила блокировки хранятся в папке профиля ФФ, в подпапке adblockplus или аналогичной по названию аддона (прочие настройки аддона хранятся в стандартном «реестре настроек» браузера). Заглянув туда, я обнаружил 2 огромных файла — INI и CSS, вместе весящих около 1,8 Мб (это «открытие» и стало причиной настоящего исследования). Понятно, что даром такие объемы (особенно CSS!) не обойдутся, даже если бы наш браузер был написан на чистом ассемблере. Чтобы понять, насколько именно Адблок обременителен для системы, были проведены замеры потребления памяти с последними, на момент написания статьи, версиями аддонов семейства Adblock в разных конфигурациях: без подписок, с подпиской против счетчиков (cnt), и 3 подписками — дефолтным RuAdlist+Easylist, BitBlock против виджетов соцсетей и cnt против счетчиков. Замечу, что RuAdlist+Easylist составляет в последней конфигурации около 90% объема файлов, поэтому последняя колонка справедлива и для установленного по дефолту без каких-либо дополнительных действий Adblock Plus.

Потребление памяти браузером Firefox 17.0.1 (в мегабайтах) с разными аддонами семейства Adblock
подписки 0 1(cnt) 3(ruad+easy,bitblock,cnt)
adblock lite 1.4.3
blank 58 58 68
yandex.ru 73 73 139
прирост 15 15 71
adblock edge 2.0.2
blank 56 57 119
yandex.ru 73 69 129
прирост 17 12 10
adblock plus 2.2.1
blank 56 57 116
yandex.ru 70 69 128
прирост 14 12 12
Что видно из таблицы (кроме того, что результаты, в целом, озадачивают): изначальные предположения об оптимизированности и легковесности, на практике подтверждаются с точностью до наоборот: самый обычный, мэйнстримовый Adblock plus оказывается самым экономным, а lite-версия, несмотря на своё название, потребляет памяти больше всех, и, кроме того, заметно замедляет прорисовку тяжелых страниц, вроде поиска изображений в Яндексе.
Почему так получается? Всё дело в версиях Adblock plus, явившихся основой альтернативных аддонов — все они более старые, а новые — лучше оптимизированы (нечасто встречающееся явление в мире ПО). В версиях 1.x использовался кэш правил в виде javascript-файла, это решение оказалось неудачным в плане производительности и от него отказались.

Заглянем внутрь XPI. В chrome/locale лежат локализации для всевозможных языков, упомянутые выше. Наибольший интерес представляет папка defaults. Модификацией файла prefs.js можно автоматизировать выставление Адблоку всех настроек что удобно при массовом развертывании. Синтаксис стандартный — как у настроек самого браузера. Рекомендуются следующие настройки:
pref("extensions.adblockplus.savestats", false);
pref("extensions.adblockplus.hideContributeButton", true);
pref("extensions.adblockplus.patternsbackups", 2);
pref("extensions.adblockplus.subscriptions_exceptionsurl", ""); //обнуляем урл белого списка "приемлемой рекламы"
pref("extensions.adblockplus.subscriptions_exceptionscheckbox", false);// бесполезно: не отключает подписку приемлемой рекламы, а только показывает белый список явно как подписку вместо галки
(Подробнее об этих и других параметрах в prefs.js читайте здесь: adblockplus.org/ru/preferences)
К сожалению, параметры аддона нельзя заранее задать в файле настроек самого браузера (например, как в моей предыдущей статье) — при первой загрузке аддона, он перезаписывает все заранее заданные параметры на дефолтные. Задача решается только подкладыванием измененного prefs.js обратно в XPI.

Свои правила игры


Стандартные подписки не только тяжеловесны, они не блокируют тяжелые и злоупотребляющие шпионажем скрипты google analytics, которые есть практически на каждом сайте, а значит — вручную хоть одно правило, но придется писать. А если писать одно — то почему бы (зная рег. выражения) и не все?
Правила было удобно сгруппировать по темам: в случае нарушения юзабилити страниц легче локализовать проблему, отключая правила поблочно. В основу нижеприведенных списков легли как готовые подписки, так и собственные наработки в области «анти-баннерных» правил для Squid. Интерфейс Адблока хорошо дружит с буфером обмена — позволяет копировать выделенные правила в виде текстовых строк или вставлять скопированный текст в виде правил.

custom
///rs[0-9]?\.mail\.ru/[bd]/
||radar.imgsmail.ru^
/images.rambler.ru/(n|upl)//
||rl0.ru$domain=~rambler.ru
||hhcdn.ru/nposter/*
||pics.top.rbc.ru/top_pics/v2/jslib/ch2.js
||pics.rbc.ru/js/api.js
|http://pics.rbc.ru/*/afm/img.gif?
||pics.rbc.ru/banners/*
||loadup.ru/*$third-party
||myuniques.ru^$third-party
||oskale.ru^$third-party
||partner.pladform.ru^$third-party
||ningme.ru/*video2*$third-party
||klonedaset.org^$third-party
||vmblock.net^$third-party
||wigetmedia.com/$script,third-party
@@||adv.magna.ru/$script
@@||swa.mail.ru/cgi-bin/*$script
||backromy.com^$script,third-party
||cs.sopital.com^$third-party
||awaps.yandex.ru^
||stream.traflux.info^$third-party
||corcon.ru/style/*
||beats.palaven.info^
||cdn.vidigital.ru/media/$object-subrequest
||pay-hit.com^$script,third-party
||ucoz.net/ads_w*.js
||ucoz.net/src/*$script,stylesheet
||spotsniper.ru/?*$script,third-party
||themodules.ru^$third-party
||bs.yandex.ru/show/*$script,third-party
||am10.ru^$script
||cedexis$script,third-party
||mythings.com^$third-party
||criteo.$third-party
||image.subscribe.ru/advert/

counters
//count(er)?\[\?\.]/$third-party
/counters?
||google-analytics.com/*.js$third-party,script
||google-analytics.com/__utm.gif?
||bs.yandex.ru/informer
||tns-counter.ru/V
/top100^
/xtcore.js
/xgemius.js
///cnt\[10]*\./$third-party
/cnt.$third-party
||kiks.yandex.
||mc.yandex.ru^
||yandex.ru/cycounter?*
counter.rambler.ru/
||yabs.yandex.ru/count/
||an.yandex.ru^
||top$third-party
||i.bigmir.net/cnt/
||count.ru/c$third-party
||hit.gemius.pl
||c.bigmir.net^
||spylog.$third-party
||hotlog.$third-party
||openstat.net/$third-party
||web-visor.com/c.js
||b.scorecardresearch.com/$third-party
||atdmt.com^$third-party
||amung.us^$third-party
||montblanc.rambler.ru^$script
||top-fwz1.mail.ru^
###counters

uni-banners
/\D(?:3\[123]\[-_x]88|88\[-_x]3\[123])\D/$domain=~money.yandex.ru
/\[.-/]1\[26]0\[-x_]600?\[.-/]/
/\[.-/]468\[-x_]\[68]0\[.-/]/
/\[.-/]300\[-x_]250\[.-/]/
/\[.-/]728\[-x_]90\[.-/]/
/240x400*.swf
/200x300*.swf
/(200|468)_1\.swf/
///ad\[sv]?\[0-9]?\./
//e?rle\.cgi/
/erle.js
||reklama.$script,subdocument,object
||advert$third-party
||banner$third-party
||adserv$third-party
/informer^$third-party
||pagead$third-party
/advert.
/\[/_]banner\.js/$script
^banner$third-party
/pagead^$third-party
//ad\[sv]?//
^adfox$script
^adriver$script
||*ads.*/$third-party
/awaps.html
^krutilka/$third-party
##.b-banner
###left_ads
###top-ads
###bn-bot-wrap
/*popunder$third-party,script
^popunder$image,~image,popup
/show_ads.js
/pop?$popup
||*pop*/$third-party,popup
*teaser*/*$third-party,script
||tizer$third-party

banners
||yabs.yandex.ru/resource/
||adriver.ru/$third-party
||googleadservices.com^$third-party
||autocontext.begun.ru/
||bn.adblender.ru
||doubleclick.net/$third-party
||directadvert.ru$third-party
||tbn.ru$third-party
||adwolf.$third-party
||dt00.net/$third-party
||goodadvert.ru/$third-party
||marketgid.com/$third-party
||luxup.ru/$third-party
||zorkabiz.ru/$third-party
||novoteka.ru/$third-party
||arbocontext.ru/$third-party
||videoclick.ru/$third-party
||looksmart.com/$third-party
||rorer.ru/$third-party
||mixmarket.biz/$third-party
||adonweb.ru/$third-party
||1100ad.com/$third-party
||b2bvideo.ru/js/video.js.php?
||molodejj.tv/$third-party
||richmedia.yimg.com/
||content.medialand.ru/*$third-party
||medialand.ru/*$third-party,~script
||magna.ru/fcgi/*$third-party
||engine.video-link.ru/$third-party
||videoclick.ru/$third-party
||videoclik.$third-party
||b.kavanga.ru/exp?*
||rotaban.ru^$third-party
||post.rmbn.ru^
||intellitxt.com^$script,third-party
||content.relax.ru^$third-party
||target.smi2.net/client/target.js
###sape_okn

anti-social
//icon?\[_-](rss|facebook|twitter|gplus|vk)\[-.]/
/icons/facebook$domain=~facebook.com
/addthis_widget.
||api-public.addthis.com/url/shares.json
|http://userapi.com/js/api/
/rss.png
||facebook.com/widgets/like$third-party
||facebook.com/plugins/*.php?$third-party,subdocument
||*.ak.facebook.com/connect/*$subdocument
/facebook.gif|$domain=~facebook.com
||api.facebook.com^$third-party
||api.qip.ru$third-party
||connect.mail.ru^$third-party
||odnoklassniki.ru^$third-party,~stylesheet
||stg.odnoklassniki.ru/share/$third-party
||odnoklassniki.ru/dk?st.cmd=extOneClickLike
||connect.ok.ru/connect.js$third-party
||connect.facebook.net/*/all.js$third-party
||mystatus.skype.com^
||vkontakte.ru/widget_$domain=~vk.com
||vk.com/widget_$third-party
||vk.com/share.php?*$script,third-party
||vk.com/images/upload.gif|$domain=~vk.com
||vkontakte.ru/share.php?*
||userapi.com^$third-party,domain=~vk.com
||stg.odnoklassniki.ru/share/odkl_share.js$third-party
plusone.js|$third-party
||plus.google.com/$subdocument,domain=~google.ru,google.com
||google.*/cse/brand?form=
||apis.google.com/_/+1/*$third-party
||platform.twitter.com/widgets.js$third-party
||yandex.st/share/$domain=~yandex.ru
/widget.js$third-party
/share.js$third-party,domain=~mail.ru
||share.pluso.ru/$third-party
||platform.twitter.com/widgets/*$third-party
||surfingbird.ru/share/share.min.js
||surfingbird.ru/button?*
##.g_blank_likes
##.googleplus
##.g-plus
##.twitter
##.twitter-follow-button
~facebook.com###facebook
##.facebook
##.fb-like
##.vkontakte
##.yashare-auto-init
##.social-links
##.fb-like-box
##.gmt-social-buttons
##.post_share
##.share-button
##.share_block
##.sharebar
##.social-links
###social-media
###b_soc
~mts.ru##.social
##.addthis_toolbox

Anti-Adblock
/blockblock*$script
/anti_ab.
/adb*_detector.
/*adblock$script,domain=~adblockplus.org

Группа custom — это правила для определенных сайтов и своего рода свалка для новых правил, создаваемых визуально через контекстное меню «Adblock plus: заблокировать изображение...»: новое правило, созданное таким путем, добавляется в первую по счету группу фильтров в конец списка.

Итак, всё это, казалось бы, немалое количество правил на деле превращается в INI и CSS, в сумме весящие всего 9,5 кб. Что примерно в 200 раз(!) меньше варианта с тремя подписками. При том же результате.

Возможна и «ленивая» реализация этой стратегии: добавляется стандартная подписка против счетчиков ruadlist.googlecode.com/svn/trunk/cntblock.txt — весит скромные 12 кб и, что хорошо, обновляется разработчиком, и пишется несколько правил вручную: против google analytics, несколько универсальных правил против баннеров и против 1-2 самых распространенных скриптов соцсетей:
пример очень простого набора правил
||google-analytics.com/$third-party
/pagead^$third-party
||googleadservices.com^$third-party
///adv?[0-9]?\./$third-party
||*ads.*/$third-party
//e?rle\./
banner$third-party
/informer^$third-party
^adfox$script
^adriver$script
||adfox.$third-party
||adriver.$third-party
||adwolf.$third-party
||connect.facebook.net/*/all.js
||google.com/js/plusone.js$third-party
||doubleclick.net^$third-party
||autocontext.begun.ru^$third-party
||directadvert.ru^$third-party
/blockBlock*$script

В сети организации возможно создание собственной подписки. Это несложно: берется результирующий patterns.ini из папки adblockplus, в нем содержимое каждой секции [Subscription filters] выкладывается на веб-сервер в виде отдельного TXT файла с заголовком [Adblock Plus 2.0] в первой строке. Автоматически подключить свои подписки можно, например, подложив patterns.ini в папку adblockplus на каждой машине. patterns.ini (например, самый минимальный) можно запихнуть и прямо в XPI — в ту же папку defaults, где мы (см. выше) заменяли prefs.js.

Справка на русском по синтаксису правил для Adblock Plus

Скачать patterns.ini с приведенными выше правилами
Вячеслав @noldo32
карма
1,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

Комментарии (64)

  • +9
    Нельзя ли выложить данные правила в виде той же подписки, например? Думаю, многие были бы благодарны вам за это. Да и просто хочется иметь какую-то базу, для допиливания «под себя».
    • +1
      Согласен, гораздо удобнее пользоваться обновляемой подпиской.
    • 0
      Т.к. поддерживать подписку не собираюсь :) — идеологически правильнее будет выложить файл patterns.ini, который просто подкладывается в папку adblockplus и дальше набор правил поддерживается самостоятельно через штатный интерфейс адблока.
      • 0
        Тут форма принципиально не важна =) Вы, главное выложите.
        • 0
          Выложил (см. низ статьи)
    • +1
      Вопрос общественности — если выложить этот файл подписки на ГитХаб, можно ли его будет подключить через прямой URL с ГитХаба?
      • +1
        Да, через RAW ссылку.
  • +5
    Статья про Adblock Plus не может быть полной без упоминания Element Hiding Helper for Adblock Plus.
    • 0
      Который, будучи подключен, волшебным образом дает в разы замедление отрисовки страниц. Проще порой пропустить «мимо ушей» (мимо глаз) пару левых div-ов, зато страница появляется сразу, а не через паузу…
      • 0
        Я так понимаю — helper предназначен для удобного создания фильтров — поэтому можно его включать только на время?
        • 0
          Скорее проблема в том, что, начав строить правила по элементам DOM страницы, мы обрекаем браузер на модификацию DOM каждый просмотр сайта. На выходе имеем, что страница не сразу отрисовывается по мере получения, а должна быть принята, обдумана, модифицирована, пересобрана — и только тогда отдана на рендер.

          В общем, накладно для мелкой заботы вроде «потушить div со значком Facebook». Хотя инструмент мощный, конечно.
      • 0
        Не замечал никакого особенного торможения. По идее наоборот, не загрузившиеся в DOM элементы могут ускорить отрисовку всей страницы. К тому же, Element Hiding Helper не сам осуществляет блокировку (это делает собственно Adblock), а только помогает составить список. Даже в самой этой статье есть примеры блокировки отдельных элементов, например см. ##.b-banner.
        • 0
          Да, Вы правы, он сам не блокирует, он просто правила создает. Грубо говоря, и без него юзеры такие правила создавать могут, но для этого нужно еще и мозг включать, указывая скрываемый элемент путем в DOM, а тут готовая графическая тулза для того же.

          Но вот насчет тормозом… Во-первых, что блокировка отдельных элементов не тормозит отрисовку — тут поспорю. Мой опыт дал мне именно обратные выводы, а пользовался я этой возможностью долго. Хорошо, может статься, что тормоза были в старых версиях Adblock и браузеров, а новые версии с ними справились, и Вам они на глаза не попались, но раньше они точно были.

          Во-вторых, и это точно имело место — пока helper (был) включен, браузер работал куда неторопливее, чем когда helper отключался. Поэтому стараюсь его без нужды даже не ставить на машину, благо, даже дефолтные списки Adblock уже сами по себе неплохо рубят всекое-разное.

          По хорошему, надо бы разобраться поглубже в вопросе, но все руки не доходят :(
    • 0
      Не рекомендую: кроме того, что achekalin заметил снижение скорости работы браузера, этот аддон бесполезен: цель его работы — правила, скрывающие элементы страницы (например, div). А ведь разработчики Адблока предупреждают: скрывание элемента не устраняет загрузки его содержимого! Если внутри div-а был баннер — он будет и скачиваться, и проигрываться (в случае флэш). И самое главное — скрипт, который этот баннер загружает, никуда не денется.
  • +1
    А для отключения социальных кнопок ещё есть #Disconnect2. Уже давно его юзаю — очень удобно, тот же Google Reader стал заметно быстрее подгружать страницы.
    • 0
      Ого, я даже и не заметил как они перешли на платную версию. У меня ещё 1я бесплатная стоит, кстати там плагин по умолчанию отключён на нескольких сайтах, я так понимаю это сайты спонсоры. Писал разработчику что бы они прислал не закодированный код, он отказался, но обещал прислать пояснения для своего API что бы дополнять его продукт. Так и не дождался ответа от него.
      • 0
        В смысле закодированную? /home/USERNAME/.config/chromium/Default/Extensions/jeoacafpbcihiomhlakheieifhpjdfeo/5.0.1_0/scripts
        Там все файлы, кроме одного, в нормальном виде.

        Да и он всё ещё бесплатный как я понял, при установке можно было нажать на кнопку типа «я не хочу платить» и всё ок.
  • –31
    И в очередной раз: не хотите смотреть рекламу — не ходите на сайт. Хотите читать сайт — соглашайтесь с теми правилами, который установил сайт. Так и только так может быть. Иначе это просто воровство чистой воды. Это тоже самое, что кататься в метро или на автобусе без билета. В очередной раз ваш любимый сайт просто исчезнет.
    • +4
      Я думаю, что сайты должны приспосабливаться. Уверен, что большая часть пользователей хабра использует какой-то блокировщик рекламы, но хабр почему-то не исчез. Ну а если сайт не может приспособиться — туда ему и дорога.
    • +4
      Не может быть никакой веской причины добровольно насиловать собственный мозг рекламным дерьмом.
      • –7
        Просто не ходите на такой сайт.
        • +5
          Откуда я знаю, что этот сайт такой, до того как я на него зайду, м?
    • +4
      Если от рекламы на сайте у меня начинает виснуть компьютер и рябить в глазах, выделяется пена изо рта и проявляется явно-выраженное желание убивать всех человеков, то мне либо использовать блокировщик, либо я просто начинаю игнорировать сайт. Если же реклама не мешает взгляду, то и я ее не уберу.
    • +12
      Так показывайте лицензионное соглашение при входе на сайт, распишите там свои правила и спрашивайте пользователя согласен ли он. Иначе это пустые слова про какие-то правила, установленные не пойми кем.
      • 0
        а как лицензионное солашение противостоит адблоку?
        • +6
          оно делает адблок аморальным расширением
    • +4
      Вот я с вами в целом и был бы согласен, если бы не одно но: я не против статичной спокойной рекламы, но, черт побери, ведь такой как раз и нет! Все эти свистоперделки и прочая мишура банально мешает браузить сайт, и тем более, читать текст.
      • +1
        Да уж. рекламное менеджерьё, воспитанное НТВ и петросяном, считают тако формат рекламы наиболее «эффективным». Остаётся два вопроса:
        1) Начальство (тот кто в итоге оплачивает) — куда оно смотрит и вообще — смотрит ли на рекламный продукт, который его органиция покупает? Или просто подписывает рекламный бюджет?

        2) Пользователи, кликающие на такую рекламу (а значит делающую её не нулевой эффективности) — кто они, как им помочь?
        • 0
          2) Это дети. В силу любознательности они не подвержены «баннерной слепоте» и кликают на все подряд.
          Будь моя воля, я бы законодательно прописал установку АдБлока на все устройства, которые могут быть использованы детьми.
    • +10
      Заходя на сайт я не подписывался, чтобы мне ставили трекинг-куки, выбрасывали на пол экрана флешбаннер (который я не могу убрать, так как самого флеша нет, а горе-вебмастер сделал кнопочку закрыть в самом флеше), проигрывали звуки, перебивая мою музыку. Создатели таких сайты должны быть выброшены из сети естественным отбором.
      • –6
        По иронии судьбы, создатели таких сайтов как раз таки получают максимальную прибыль. А без флеша, где крутиться его реклама вы этому «горе-вебмастеру» вообще не интересны как целевая аудитория.

        Кстати, еще интересная практика — переход по рекламной ссылке при нажатии кнопки «закрыть рекламу», очень рекомендую ;)

        • +5
          Кстати, еще интересная практика — переход по рекламной ссылке при нажатии кнопки «закрыть рекламу», очень рекомендую ;)

          Я Вам настоятельно рекомендую сменить профессию. Такие, как Вы делают интернет хуже.
          • +1
            Вообще-то это была иррония, а никак не руководство к действию. Использование агрессивной рекламы оправдано только в случае, когда проект уже заброшен и нет перспектив его дальнейшего роста и таких проектов сейчас в интернете довольно много.
            • 0
              Иррациональная иррония.
              • 0
                Мнение не может быть иррациональным — оно либо есть, либо его нет. А то ложиться ли оно в общий тренд или нет — зачастую проблемы самого тренда.
        • 0
          к сожалению это довольно часто используется уже… Особенно раздражает когда вкладок открыто много(в процессе активного поиска) а закрытие открывает еще парочку вкладок…
      • –12
        Набрав в адресной строке адрес сайта вы автоматом соглашаетесь на все условия этого сайта, на всю получаемую рекламу, на все трекинги и все вирусы. Это как публичная оферта. Или как — купив билет в метро вы автоматом соглашаетесь со всеми правилами метрополитена, хотя в может и не знать их.

        Если вы не хотите все это получать, то просто не ходите на такой сайт и он сам со временем вымрет. А вы хотите все получить и за даром. Так не бывает. В итоге и сам сайт и вы пострадаете. Пример: в какой то момент все решили не платить за проезд в метро и стали перепрыгивать через турникет. Через какое то время метро закроется и вы будет ходить пешком.
        • +6
          То что вы написали, это фантазии в вашей голове. Давайте приведите хоть один нормативный акт на счёт буличной оферты. То что загружено в мой компьютер я имею полное право обрабатывать каким угодно образом.
          • –6
            Это не фантазии. Это простое уважение к чужому труду.
            • +3
              Зайдя в наше кафе в автоматом соглашаетесь на то, что вас можно изнасиловать в любой особо извращенной форме…
              • 0
                Или добавить в булочку кишечных палочек.
              • 0
                и на такое своя ЦА найдется
          • 0
            Давайте приведите хоть один нормативный акт на счёт буличной оферты. То что загружено в мой компьютер я имею полное право обрабатывать каким угодно образом.

            Здесь Вы ой как не правы :)
            У пользователя Windows тоже на компьютере (aka загружен), но он не может делать с ним все что заблагорассудится, «деюро» само собой. Законодательство в сфере защиты прав интеллектуальной собственности позволяет накладывать ограничения на пользователя, передавая ему результат своего интеллектуального труда под неисключительной лицензией, именно в текстах таких лицензий, как пример запрет на декомпиляцию или модификацию.
            Так, для ознакомления
            ( см. Статья 1280. Свободное воспроизведение программ для ЭВМ и баз данных. Декомпилирование программ для ЭВМ)
            ( см. Статья 1270. Исключительное право на произведение, подпункт № 9 «перевод или другая переработка произведения...»)

            В данном случае вопрос только в применимости… т.е. контент сайта, сам сайт по сути не является комплексным объектом защиты, как например программы для ЭВМ, базы данных и топологии интегральных микросхем (выделенные законодателем), но тем не менее обладая всеми необходимыми признаками может быть приравнен к ним, на основании того-же ГК см. статью №6 ГК РФ.
            вот…
            • 0
              т.е. если создатель сайта предусмотрел на нем рекламу — она является частью продукта его интеллектуального труда, то используя этот продукт «выдирая» рекламу, Вы его модифицируете, а стало быть нарушаете его право.

              PS: И еще полезно было бы знать по поводу публичной оферты и интернета… Публичная оферта в буквальном толковании озанчает «Пользуетесь, значит соглашаетесь» :) Но практика подобных разбирательств показывает, что условия все таки должны быть, ВНИМАНИЕ, «Доступны для ознакомления», и законодатель нас не заставляет силком ознакамливать, т.е. достаточно разместить на своем ресурче правила использования, где в явном виде запретить использование блокировщиков рекламы, и дать на них ссылку на главной… И начиная с этого момента Все кто приперся с AdBlock-ом априори нарушители.

              Только вот, что потом с ними делать… деюро то оно так, но вот до состава преступления еще далеко.
    • 0
      Существует куча примеров платных услуг которые помимо всего прочего еще и навязывают вам рекламу. Кино, маршрутки — автобусы, торговые центры — это все те места где вам навязывают свою рекламу не смотря на то, что свои деньги вы в эти организации итак уже отдали.
      С сайтами все не лучше — например сайт с платными объявлениями показывает тонны рекламы. Хотя он косвенно получает от меня деньги. Нередко реклама бывает на сайте организаций адрес которых мне нужно узнать. Неужели и им я что-то должен?
      Впрочем, если реклама не выпрыгивает, не раздражает, не трясет голыми половыми органами у меня перед глазами то ее можно не блокировать. Увы — в сети до сих пор огромное количество тошнотворной, мешающей уделять хоть какое-то внимание той информации ради которой я пришел на сайт, рекламы. И пока она есть я буду ее резать.

      зы. а выходить на кухню пока в телевизоре идет реклама тоже по вашему нарушение правил которые установил телеканал? И если люди так себя ведут то они не должны смотреть телевизор?
      • 0
        От рекламы по зомбоящику очень помогает кнопка отключения звука.
      • 0
        >Кино, маршрутки — автобусы, торговые центры — это все те места где вам навязывают свою рекламу не смотря на то, что свои деньги вы в эти организации итак уже отдали.
        если я при этом хожу в наушниках в торговые центры и автобусы (и снимаю только когда мне нужно что-то сказать и ожидаю ответа) — я тоже нарушаю правила пользования торговым центром (с которыми меня даже не пробовали ознакомить) тем что нагло не слушаю их рекламу а слушаю музыку?
    • 0
      Смысл рекламы не в том, чтобы её «посмотрели». Смысл рекламы в том, чтобы после неё что-нибудь купили. Если я уверен в том, что не нуждаюсь в приобретении каких-либо товаров и услуг, в чём мне смысл смотреть рекламу?
      • 0
        Нет. Для хозяев сайта смысл именно в том, чтобы смотрели. Ибо платят им за показы/просмотры. Именно отсюда вся эта ненависть к блокировщикам и любовь к всплывающим флэш-баннерам в пол-экрана.
    • 0
      Do not feed the trolls
      прописная истина
  • +4
    Есть еще аддон Ghostery. Блокирует разные трекеры, счетчики. Есть для всех основных браузеров.
    • 0
      В Ghostery нельзя задать свои правила, чему как раз и была посвящена статья. Сам аддон весит раза в 3 больше и содержит jquery, что уже само по себе…
      • 0
        Т.к. поддерживать подписку не собираюсь


        Нельзя, но зато в нем правила обновляются…
        • 0
          Они и в Адблоке обновляются, кстати, для Адблока существует много разных подписок, помимо стандартной ruAdlist+Easylist. Но в статье показан альтернативный подход: вместо постоянно обновляемых правил для каждого сайта в интернете — правила универсальные.
  • +1
    К сожалению, нельзя 2 плюса поставить, первый, наверное, был за пред. статью. Поэтому словами — спасибо, noldo32, за последовательный подход к правилам и выкладывание правил, это должно хорошо помочь в скорости загрузки страниц.
  • 0
    Всегда интересовался, как научить адблок не блочить на сайтах из белого списка. Кто-нибудь знает?
    • 0
      В настройках (для хрома например) есть вкладка «белый список доменов)
    • +1
      По заходу на сам сайт из меню AdBlock выставить галку «отключить на этом сайте».
      AdBlock → настройки → исключения.
    • 0
      Также можно просто находясь на самом сайте нажать на кнопку адблока в самом браузере и выбрать пункт «Не запускать на страницах этого домена», потихоньку таким образом формируя белый список :)

      *мда, буду впредь обновлять комментарии перед написанием собственного*
    • 0
  • 0
    /widgets.js$third-party
    из этих фильтров наглухо блокируют окно оплаты PayPal а конкретно
    www.paypalobjects.com/MERCHANTPAYMENTWEB-640-20130601-1/Checkout/js/min/widgets.js

    поправьте фильтры в статье пожалуйста
    • 0
      Поправил. Но вообще, идеология такая: берутся универсальные правила, и в индивидуальном порядке подгоняются при необходимости. Можно просто — на проблемной странице дать команду в меню адблока «отключить на этой странице», и адблок перестает на ней что-либо блокировать. В правилах при этом появляется исключение для данной страницы.
  • 0
    Большое спасибо! :) На лайфхакере блок комментарием не отображается, а также куча рекламы отображается на файлообменнике турбобит (возможно и на каких-то других, не проверял). Возможно это как-то поправить в фильтрах?
  • 0
    А что делать если название блоков постоянно случайные?
    Как запретить сайту скрывать элементы сайта при появлении antiadblock?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.