Поток сознания, структурированный для более удобного восприятия... Прежде всего для сброса мыслей и впечатлений, которые оттягивают на себя слишком много ресурсов.

суббота, 21 ноября 2009 г.

Как убрать тупую рекламу от "вконтакта"

где-то в районе Russian Federation, Province of Omsk, Omsk
  Давно хотел выложить в публичный доступ один из способов зачистки рекламы. B-) 13 июля этого года он был оформлен как заметка на моей странице в "контакте". Сразу замечу, что я хожу в инет через Privoxy, поэтому в основном говорить буду о нём. Тем более, что бо́льшая часть рекламы режется им без настроек.
А, например, подавляющее большинство баннеров на livejournal.com убирается дописыванием строки
 ads.sup.com/
в блок
{ +set-image-blocker{blank} }
файла user.action.
  И ещё... По умолчанию Privoxy полностью режет google-analytics.com, хотя теоретически нужно избавляться только от скриптов оттуда. Это сильно замедляет (если не сказать вешает) работу многих сайтов, которые этот самый analytics используют для ведения статистики. В этом случае мне лично помогли такие действия:
  1. Закомментить строчку, содержащую google-analytics в файле default.action (она там одна, по крайней мере, в Debian Lenny, где стоит версия Privoxy 3.0.9-1);
  2. Добавить в конец user.action следующие строчки:
{ +block +handle-as-empty-document}
google-analytics.com/.*\.js$
googlesyndication.com/.*\.js$
 А теперь -- собственно про "вконтакт". :)

  Меня лично задолбали навязчивые предложения закинуться новой наркотой и утверждения "ты дурак", %) поэтому я решил почистить контент от идиотских баннеров. Если Вам тоже это интересно, здесь я поделюсь своим (и чужим :) ) опытом борьбы с рекламой.
Для начала можно ознакомиться со статьёй в жж по сходной теме:
http://raessentia.livejournal.com/29845.html?thread=199573
Естественно, для "вконтакта" придётся изменить имена классов, поскольку они отличаются. В userContent.css нужно будет вписать
.ad_box, .ad_title, .ad_desc {display: none !important;}
, после чего научить браузер пользоваться этой таблицей стилей. Если влом идти читать жж, :) цитирую инструкцию здесь:
"Создаем пустой файл userContent.css, если у вас Firefox то в C:\Documents and Settings\[имя юзера]\Application Data\Mozilla\Firefox\Profiles\[ваш профиль]\chrome, для IE и оперы, где захотите. В файле пишем код, само собой сохраняем =)
  Если вы используете ИЕ то меняем в настройках Tools->Internet options-> закладка General, нажимаем кнопку Accessibility. Ставим галочку на Format documents using my style sheet. В поле прописываем полный адрес файла куда вы его сохранили, например C:\userContent.css.
  Если юзаете оперу. Инструменты -> Настройки -> Дополнительно -> "Параметры Стилей". Адрес до таблицы стилей, например также как и выше."

Код, о котором там идёт речь - это то самое ".ad_[bla-bla-bla]".
В варианте для AdBlock Plus в фильтрах должно стоять примерно следующее:
vkontakte.ru#A(class=ad_box)
vkontakte.ru#DIV(class=ad_title)
vkontakte.ru#DIV(class=ad_desc)

В Opera эти же строчки нужно вписать в Tools -> Advanced -> Blocked Content
Я лично использую Privoxy, для которого по этому случаю накатал простенький фильтр и положил его в user.filters:
FILTER: general-ads-css Blocks ads by css classes
s@<head>@\n<style type="text/css">\n\
  /* Style sheet inserted by Privoxy's general-ads-css filter. */\n\
  .adv, .ad, .ad_box, .ad_title, .ad_desc {display: none !important;}\n\
</style>\n$0@

Естественно, в конфигурации privoxy нужно раскомментить строчку типа
filterfile user.filter # User customizations
Кроме того, в файле user.actions адрес vkontakte.ru у меня стоит в блоке fragile, поэтому в конце файла я добавил ещё одну секцию:
{ +filter{general-ads-css} }
.vkontakte.ru

После перезапуска Privoxy можно наслаждаться чистой страничкой. :)

3 комментария:

Алексей комментирует...

Обычно в firefoxe в плагине AdBlock нажимаю кнопочку заблокировать, после чего открываю настройки и свежедобавленое превращаю в шfблон типа ...joprst/*... и больше никогда этого не вижу

Алексей комментирует...

Оффтопик: у тебя опрос есть а как на него ответить? а то чето там кнопа ответить у меня отсутствует??? %) или это чисто поиздеваться?

Mwanga комментирует...

Я так понимаю, что обычный AdBlock чует только картинки, скрипты и страницы по регулярным выражениям. А там фишка была в том, что реклама оформлялась внутри CSS, поэтому стандартными способами "в лоб" её отловить не удавалось.

На оффтопик: если кнопки нет - знач ответ не предусмотрен. %) Это ж дзенский опрос. =)

Отправить комментарий