Blog. Just Blog

Как убрать рекламу в результатах поиска Яндекса

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Software | Автор: ManHunter
Как убрать рекламу в результатах поиска Яндекса
Как убрать рекламу в результатах поиска Яндекса

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

Привычным движением я попытался выделить элемент на странице через помощник AdBlock и заблокировать его. Первой неожиданностью оказалось то, что в разметке страницы рекламные блоки ничем не отличались от блоков с нормальными результатами поиска. Ни стилями, ни идентификаторами, ни названиями тегов, то есть ВООБЩЕ ничем, к чему можно было бы привязать правило AdBlock.

Разметка списка с результатами поиска
Разметка списка с результатами поиска

Первый развернутый элемент LI - это и есть верхний рекламный блок, дальше идут ссылки на результаты поиска. Но как же получается так, что при одинаковой разметке блоки с рекламой имеют отличающиеся стили (фон и надпись "Реклама")? Тут на помощь пришел FireBug, любезно продемонстрировав использованный разработчиками трюк со стилями:

Стиль рекламных блоков
Стиль рекламных блоков

В CSS3 появился псевдокласс nth-child, позволяющий задавать стили элементам на основе их нумерации в дереве элементов, то есть без привязки к конкретным идентификаторам, разметке и т.п. Именно этот псевдокласс и был использован для оформления рекламных блоков. В таблице стилей видно, что особому оформлению подвергаются 1, 14, 15, 16 и 17 по счету элементы списка, в точности как на странице результатов поиска расположены рекламные блоки. Что ж, стоит признать выдумку разработчиков в плане противодействия блокировщикам рекламы. Как я уже говорил, такие рекламные блоки невозможно спрятать средствами AdBlock, ведь они не отличаются от других элементов списка. Количество и расположение рекламных блоков изменяется в зависимости от поисковых запросов, поэтому нельзя прописать правило типа "Удалить первый блок". Подобные рекламные блоки невозможно вырезать со страниц на прокси-фильтрах, опять же по причине совпадающей разметки. Реклама победила? Нет.

На помощь приходит замечательное дополнение для браузера Firefox - Greasemonkey. Суть его в том, что на любую страницу можно добавить пользовательский JavaScript, который будет выполнен сразу же после ее формирования. Это позволяет, например, как угодно модифицировать страницу после ее загрузки. Для множества сайтов уже созданы сотни полезных скриптов, а, обладая навыками программирования на JavaScript, вы можете сами написать нужный вам скрипт. Если интересны подробности, то почитайте документацию на офсайте дополнения.

Итак, после загрузки страницы нам надо найти и спрятать рекламные блоки. Но как их отличить от обычных результатов поиска? А делается это через проверку атрибутов стиля средствами JavaScript. Получаем стиль каждого блока из списка функцией getComputedStyle и проверяем его на какое-нибудь свойство, присущее оформлению рекламного блока. Я использовал проверку фона: у обычных результатов поиска он прозрачный, все остальное подлежит уничтожению. Скрипт будет выполнен сразу после загрузки страницы, рекламные блоки будут удалены. Но есть одно большое "НО". При листании результатов поиска, загрузка следующих страниц выполняется через AJAX, то есть без перезагрузки страницы, стало быть скрипт больше не будет отрабатывать, и на второй и следующих страницах рекламные блоки скрываться не будут. Еще одно очко в пользу разработчиков, еще один хитрый ход для обхода даже таких продвинутых блокировщиков рекламы. Но победы им не видать. Ставим обработчик на событие DOMNodeInserted, которое будет срабатывать при вставке на страницу нового контента. Теперь страница с результатами поиска находится под непрерывным надзором скрипта и вся гадость с нее будет мгновенно удаляться.
  1. // ==UserScript==
  2. // @name        NoYandexAds
  3. // @namespace   http://yandex.ru/yandsearch*
  4. // @description Remove ads in Yandex search results
  5. // @include     http://yandex.ru/yandsearch*
  6. // @author      ManHunter / PCL
  7. // @version     1.0.0
  8. // ==/UserScript==
  9.  
  10. (function () {
  11.     window.removeads = function(event) {
  12.         var elems=document.getElementsByTagName('li');
  13.         for (var i=0i<elems.lengthi++) {
  14.             var el=elems[i];
  15.             var st=getComputedStyle(el,'');
  16.             var bg=st.backgroundColor;
  17.             // Фон у рекламы отличается от прозрачного
  18.             if (bg!='transparent' && bg!='rgba(0, 0, 0, 0)') {
  19.                 // Удалить
  20.                 el.style.display='none';
  21.             }
  22.         }
  23.     }
  24.     window.addEventListener('DOMNodeInserted'removeadsfalse);
  25.     removeads();
  26. })();
UPD: для новой версии Яндекса верстка снова поменялась, на этот раз рекламные блоки содержатся в тегах div, при каждом обновлении страницы меняются названия классов, и всякие подобные мерзотные фокусы. К счастью, все прекрасно обнаруживается по непрозрачному фону.
  1. // ==UserScript==
  2. // @name        NoYandexAds
  3. // @namespace   http://yandex.ru/yandsearch*
  4. // @description Remove ads in Yandex search results
  5. // @include     http://yandex.ru/yandsearch*
  6. // @author      ManHunter / PCL
  7. // @version     1.0.1
  8. // ==/UserScript==
  9.  
  10. (function () {
  11.     window.removeads = function(event) {
  12.         var elems=document.getElementsByTagName('div');
  13.         var re=/(^|\s)(serp-block)(\s|$)/;;
  14.         for (var i=0i<elems.lengthi++) {
  15.             var el=elems[i];
  16.             if (re.test(el.className)) {
  17.                 var st=getComputedStyle(el,'');
  18.                 var bg=st.backgroundColor;
  19.                 // Фон у рекламы отличается от прозрачного
  20.                 if (bg!='transparent' && bg!='rgba(0, 0, 0, 0)') {
  21.                     // Удалить
  22.                     el.style.display='none';
  23.                 }
  24.             }
  25.         }
  26.     }
  27.     window.addEventListener('DOMNodeInserted'removeadsfalse);
  28.     removeads();
  29. })();
UPD2. Яндекс убрал фон рекламных блоков, по которым она определялась и удалялась. Но их это не спасет :) Рекламщики, убейтесь уже, твари, об стену и прекратите засерать интернет своей поганой рекламой! Вам никогда не победить.
  1. // ==UserScript==
  2. // @name        NoYandexAds
  3. // @namespace   yandsearch
  4. // @match       http://*/yandsearch?*
  5. // @match       https://*/yandsearch?*
  6. // @description Remove ads in Yandex search results
  7. // @author      ManHunter / PCL
  8. // @version     1.0.2
  9. // ==/UserScript==
  10.  
  11. (function () {
  12.     window.removeads = function(event) {
  13.         var elems=document.getElementsByTagName('div');
  14.         var re1=/(^|\s)(serp-block)(\s|$)/;
  15.         var re2=/"serp-item__label"/;
  16.         for (var i=0i<elems.lengthi++) {
  17.             var el=elems[i];
  18.             if (re1.test(el.className) && re2.test(el.innerHTML)) {
  19.                 // Удалить
  20.                 el.style.display='none';
  21.             }
  22.         }
  23.     }
  24.     window.addEventListener('DOMNodeInserted'removeadsfalse);
  25.     removeads();
  26. })();
Или объединенный вариант, который давит рекламу как по фону, так и по маркерам "Реклама". Как оказалось, для разных версий браузеров верстка поисковой выдачи отличается. Приведенный ниже скрипт учитывает оба варианта верстки.
  1. // ==UserScript==
  2. // @name        NoYandexAds
  3. // @namespace   yandsearch
  4. // @include     /^https?://(news\.yandex\.|yandex\.[^/]+/(yand)?search[/?])/
  5. // @description Remove ads in Yandex search results and News
  6. // @author      ManHunter / PCL
  7. // @version     1.0.11
  8. // @grant       none
  9. // @updateURL   http://www.manhunter.ru/autoupdate/NoAds.meta.js
  10. // @downloadURL http://www.manhunter.ru/autoupdate/NoAds.user.js
  11. // @icon        http://www.manhunter.ru/autoupdate/NoAds.png
  12. // ==/UserScript==
  13.  
  14. (function () {
  15.     window.removeads = function(event) {
  16.         var elems=document.getElementsByTagName('div');
  17.         var re0=/(^|\s)(serp\-adv(\-item)?)(\s|$)/;
  18.         var re1=/(^|\s)(serp\-item)(\s|$)/;
  19.         var re2=/"serp-item__label/;
  20.         var re3=/(^|\s)(story__group)(\s|$)/;
  21.         var re4=/(^|\s)(story)(\s|$)/;
  22.         var re5=/(^|\s)(serp\-block)(\s|$)/;
  23.         var re6=/^data-d-[0-9a-z]+/;
  24.         var re7=/(^|\s)(serp-item_js_inited)(\s|$)/;
  25.         var re8=/^data-[0-9a-z]{4}$/;
  26.  
  27.         for (var i=0i<elems.lengthi++) {
  28.             var el=elems[i];
  29.             if (re0.test(el.className)) {
  30.                 el.parentNode.removeChild(el);
  31.             }
  32.             else if (re7.test(el.className)) {
  33.                 var tmp=el.attributes;
  34.                 for (var j=0j<tmp.lengthj++) {
  35.                     if (re8.test(tmp[j].name)) {
  36.                         // Удалить
  37.                         el.parentNode.removeChild(el);
  38.                     }     
  39.                 }
  40.             }    
  41.             else if (re3.test(el.className)) {
  42.                 var st=getComputedStyle(el,'');
  43.                 if (st.position=='absolute') {
  44.                     el.parentNode.removeChild(el);
  45.                 }
  46.             }            
  47.             else if (re4.test(el.className) && el.id!='') {
  48.                 var st=getComputedStyle(el,'');
  49.                 if (st.position=='absolute') {
  50.                     el.parentNode.removeChild(el);
  51.                 }
  52.             }            
  53.             else if (re1.test(el.className)) {
  54.                 var st=getComputedStyle(el,'');
  55.                 var bg=st.backgroundColor;
  56.                 // Фон у рекламы отличается от прозрачного
  57.                 if (bg!='transparent' && bg!='rgba(0, 0, 0, 0)') {
  58.                     // Удалить
  59.                     el.parentNode.removeChild(el);
  60.                 }
  61.                 // Надпись "Реклама"
  62.                 else if (re2.test(el.innerHTML)) {
  63.                     // Удалить
  64.                     el.parentNode.removeChild(el);
  65.                 }
  66.             }
  67.             else if (re5.test(el.className)) {
  68.                 var tmp=el.attributes;
  69.                 for (var j=0j<tmp.lengthj++) {
  70.                     if (re6.test(tmp[j].name)) {
  71.                         // Удалить
  72.                         el.parentNode.removeChild(el);
  73.                     }     
  74.                 }
  75.             }    
  76.         }
  77.     }
  78.     window.addEventListener('DOMNodeInserted'removeadsfalse);
  79.     removeads();
  80. })();
Установите дополнение Greasemonkey, сохраните скрипт под именем NoYandexAds.user.js в папку gm_scripts, которая находится в папке с профилем браузера. После этого реклама в результатах поиска вас больше не побеспокоит. Хорошая новость и для пользователей браузера Chrome: он тоже понимает скрипты в формате Greasemonkey. Аналогичное расширение для Оперы тоже есть, оно называется ViolentMonkey. А любителям показывать рекламу со всякими подвыподвертами я могу только напомнить народную мудрость про хитрую жопу и хер с винтом.

Поделиться ссылкой ВКонтакте Поделиться ссылкой на Facebook Поделиться ссылкой на LiveJournal Поделиться ссылкой в Мой Круг Добавить в Мой мир Добавить на ЛиРу (Liveinternet) Добавить в закладки Memori Добавить в закладки Google
Просмотров: 25335 | Комментариев: 69

Внимание! Статья опубликована больше года назад, информация могла устареть!

Комментарии

Отзывы посетителей сайта о статье
ManHunter (12.08.2016 в 16:13):
Скрипт по ссылке обновлен до версии 1.0.13
В статье новые версии публиковаться больше не будут, только в репозитории.
ManHunter (17.09.2015 в 11:36):
Комментарии отключены. ЛЮБАЯ попытка сообщить мне, что скрипт не работает, будет гарантированно заканчиваться баном. Скрипт будет обновляться по мере необходимости.
X-Wing Top Ace (03.09.2015 в 14:18):
Spirit'у спасибо - один скрипт хорошо, а два лучше.

Но в прогнозе погоды не вырезает реклажу и скрипт разработки lainverse.
Spirit (03.09.2015 в 00:29):
Вот скрипт, удаляющий весь директ и рекламу яндекса, в том числе и в новостях.
Скрипт регулярно обновляется.

https://greasyfork.org/scripts...0Ads.user.js
X-Wing Top Ace (31.08.2015 в 14:23):
Цитатани при каких условиях я НЕ НАБЛЮДАЮ ни одного рекламного блока, все 100% вырезано скриптом. Браузеры - старый Firefox 3, последний Fierefox 40 и Google Chrome 44.

Выходит, что реклажовщики не отображают блоки этих новых стилей в Огнелисе и Хроме, а только в других браузерах? Вместо чтоб допекать вас вопросами, сам поэкспериментирую с Огнелисом - если это так, то под ним и у меня скрипт стабильно вырежет всю реклажу с Тындекса.

А вас поздравляю - получается, что тындексятники не применяют новые реклажовые блоки для тех браузеров, которые вы пользуете, чтобы вы не доработали скрипт. Боятся, реклажерассадники! :E

Кстати, для себя нашел выход, хотя и через полумеру. Для пользующих Оперу отпишусь. Есть такой аддон для Оперы - "Show IDs". Поставил его, чтобы попытаться разобраться, что за блоки, но при клике на кнопку этого аддона реклажовые блоки, если вдруг они видны, благополучно исчезают. У кого тоже видно реклажу Тындекса в Опере, примите не вооружение.

ЦитатаИ любые изменения в скрипт будут вноситься тогда и _ТОЛЬКО_ ТОГДА, когда я сам увижу рекламу.

Да, разумеется. Я потому и расписывал, что происходит с пагами, авось удастся воспроизвести. Нет - значит, нет.

Цитатая очень прошу воздержаться от комментариев, что где-то что-то "не работает".

Воздержусь.
ManHunter (28.08.2015 в 13:22):
Похоже, что мои комментарии никто не читает. Повторяю еще раз, последний. Я ежедневно пользуюсь яндексом не по одному десятку разных запросов. И ни на одной странице, ни по одному запросу, ни при каких условиях я НЕ НАБЛЮДАЮ ни одного рекламного блока, все 100% вырезано скриптом. Браузеры - старый Firefox 3, последний Fierefox 40 и Google Chrome 44.

Теперь главное. Если у кого-то, при каких-то условиях, на каких-то браузерах при использовании скрипта каким-то чудесным образом появляется реклама, то я ничем, повторяю - НИЧЕМ, не могу помочь. ВООБЩЕ НИЧЕМ НЕ МОГУ ПОМОЧЬ! У меня все работает как задумано, и воспроизвести вашу ситуацию без ПОЛНОГО совпадения условий (провайдер, софт, железо, поисковый запрос, расположение звезд на небе, осадки в Зимбабве и т.п.) я не в состоянии. Без этого все багрепорты для меня имеют нулевую ценность. И любые изменения в скрипт будут вноситься тогда и _ТОЛЬКО_ ТОГДА, когда я сам увижу рекламу. Поэтому я очень прошу воздержаться от комментариев, что где-то что-то "не работает". У меня все работает. Точка.
X-Wing Top Ace (28.08.2015 в 12:35):
Багрепортю о реклажовых блоках в поисковой выдаче.

Софт все тот же, что в предыдущих моих багрепортах, кроме версии самого скрипта, обновленного до 1.0.8.

Сегодня, 28.08.2015, вбил в поиске Тындекса 'HIEW 8.44' и при пролистывании поисковой выдачи увидел реклажовые блоки - 1 шт. внизу некоторых страниц (у меня были на стр. 3, 4 и 10).

Обновлямс страницы обычно приводит к пропаданию блока, но при нескольких обновлямсах подряд реклажовый блок может снова появиться. Т.е. опять похоже не то, что у тындексятников появился еще один стиль реклажовых блоков, на который скрипт последней версии 1.0.8 не реагирует и пропускает их.
X-Wing Top Ace (29.06.2015 в 13:42):
Цитатахетелось бы применять некий фильтр, который не просто скрывает элементы, а блокирует их получение

Вообще-то Опера (по крайней мере, классическая, до v12.17) так и делает еще со времен лимитированного трафика - блокируемые данные просто не загружаются.

Цитатажелательно с возвратом серверу ошибки на пиём рекламы, что бы статистика по блокировке рекламы, как минимум мазолила глаза помоещникам-рекламщикам

Наоборот - чем малозаметнее для реклажовщиков блокировка реклажи, тем лучше. Пусть думают, что их заблоченную реклажу видят. Получается удар по карману и реклажовщикам, и реклажедателям - деньги за реклажу платят, а на деле реклажу и не смотрят, соответственно она не увеличивает доходы. Так что пусть копаются в логах (или сканят их программно), с какого айпюка не скачали их задолбаннеры и прочую реклажу вместе с просмотром содержательного контента.

И да - ниже правильно написАли насчет "просто не скачивать".
ManHunter (25.06.2015 в 07:41):
ЦитатаА как такое делается?

Например, http://proxomitron.ru/board/
Unregistered (25.06.2015 в 04:48):
Цитатаотфильтровать "на подлете" через прокси

А как такое делается? Было бы интересно почитать статью на эту тему. У вас случайно такое было/будет?

Цитатажелательно с возвратом серверу ошибки на пиём рекламы

Это как и зачем? Клиент скачивает какие-то данные - смысл самому запросить файл и вернуть отказ от получения? Просто не скачивать, не?
ManHunter (22.06.2015 в 07:52):
В яндексе программисты тоже не зря зарплату получают, в том числе, наверное, и с этой говнорекламы. Разметка рекламных блоков вообще ничем не отличается от разметки блока с результатами поиска, поэтому нет способов очистить от них страницу и отфильтровать "на подлете" через прокси или AdMuncher. По этой же причине невозможно создать правило AdBlock, т.к. для скрытия рекламы он после загрузки страницы просто внедряет в страницу правила CSS, привязанные к ее элементам по id или переопределяет уже готовые стили. И по этой же причине невозможно вернуть серверу отказ в загрузке, это ж не баннеры/фреймы, а обычный текстовый блок. Все, что загружается по ссылкам - это можно заблокировать, а то, что уже находится на странице и с технической точки зрения ничем не отличается от других элементов - увы.
Spirit (22.06.2015 в 02:11):
Уделил некоторое время изучению вопроса - да, в поисковых запросах рекламу убирал не адблок, а адмюнхер правилом : (http://yabs.yandex.ru/count/*  изъять div/span с текстом).
Но касаемо версий - на версии 21 фаерфокса, это правило адмюнхера работает, на 38ой версии фильтр адмюнхера срабатывает, но реклама не уходит.
Так же заметно различное поведение некоторых элементов страницы с поиском, таких, как например поисковая строка. - В 21 версии она не откреплялась и не смещалась при прокрутке страницы, а находилась статично в самом верху.
В последней версии она открепляется... Так же в списке элементов адблока, на странице поиска, в новой версии одних только скриптов отображается больше раза в 3. Наблюдается так же различие мелких элементов, типа сортировки результатов поиска - в старой версии кнопки (искать в картинках, видео и т.д.) выглядели как ярлык с подписью, в новой версии это просто активная текстовая строка.
   Короче это я к тому, что на лицо различное поведение при обработке страницы у разных версий и для меня в идеале было бы чистить мусор не в самом браузере, а "на подлёте" - в том же адмюнхере. Но мне так и не удаётся понять - почему он не срабатывает в новой мозиле.
  Пишу на С++ под микроконтроллеры, а яву изучить в своё время не удосужился...
  Если можно, поясните в кратце дилетантский вопрос - тот же адблок, адмюнхер или адгуард просто скрывают фильтруемую информацию на странице, или действуют как то более разумно - например блокируют каким либо способом загрузку данных элементов? На сколько я понимаю, адблок похоже как раз только скрывают, а адмюнхер и адгуард фильтруют траффик. В идеале хетелось бы применять некий фильтр, который не просто скрывает элементы, а блокирует их получение, а ещё желательно с возвратом серверу ошибки на пиём рекламы, что бы статистика по блокировке рекламы, как минимум мазолила глаза помоещникам-рекламщикам.
ManHunter (21.06.2015 в 22:40):
Повторяю еще раз специально для тех, кто на бронепоезде: адблок НЕ убирает рекламу в поисковой выдаче яндекса. Причину я написал в статье. И версия тут ни при чем, я вообще сижу на Firefox 3.6.28, везде помогает только скрипт.
Spirit (21.06.2015 в 13:40):
Дотаточно использовать не изуродованную версию мозиллы - я предпичитаю 21, где ещё есть нормальный вид - в новых окнах, вместо дебильных вкладок.
В этой версии и более ранних, реклама убирается адблоком либо адмюнхером, запросто. Последние убогие мозилы -да, требуют сложных действий.
Андрей (03.06.2015 в 11:07):
Большое спсибо,давно искал способ убрать рекламу из яндекса.Сайт занес в закладки)
ManHunter (04.04.2015 в 20:56):
Она прекрасно убирается адблоком.
Шура (04.04.2015 в 20:51):
Супер, всё работает!
А как вот эту бяку убрать ещё (сверху поисковой выдачи)?
Скрин:
http://savepic.net/6632901.htm
sid34 (03.01.2015 в 01:57):
А если попробовать добавить в исключения?
http://yandex.*/images/*
http://yandex.*/video/*
ManHunter (22.12.2014 в 00:11):
В Firefox 3.6.28 все работает как надо. Остальное меня волнует чуть меньше, чем никак.
Дмитрий (19.12.2014 в 12:18):
скрипт отлично работает , но вот что ещё я обнаружил.
иногда пользуюсь поиском изображений и
при включеном скрипте не отображается информация в яндекс.картинки
идут пустые строчки, отключаешь его, обновляешь страницу, вуаля, всё есть .
как с этим быть ManHunter?
ManHunter (11.12.2014 в 22:58):
Как только ВСЕ браузеры в рамках своей безопасности разрешат работу с буфером обмена - в тот же день сделаю.
Станислав (11.12.2014 в 22:55):
Убрать нумерацию хорошо. Может добавить опцию копировать код?
Серый (03.11.2014 в 19:37):
Isaev, вот для подруги делал когда-то, старое и корявое, переделывать влом, но по её словам до сих пор фурычит, если хотите за основу возьмите.

// ==UserScript==
// @name        vk.com - удалить рекламу сбоку (ver.2013.04.19)
// @namespace   vk.com
// @description vk.com - удалить рекламу сбоку (ver.2013.04.19)
// @include     *vk.com*
// @version     1
// @grant       none
// ==/UserScript==
if(parent.location.href!=self.location.href)
    return;
function GM_vk_delete_spam(e){
    var e=document.getElementById('left_ads');
    if(e){
        e.innerHTML='Deleted at '+new Date().toLocaleTimeString();
        e.id='';
    }
}
setInterval(GM_vk_delete_spam,1111);
tralala (30.10.2014 в 16:25):
Отлично работает и на Opera 12! Супер!

только пришлось старый Violentmonkey искать
для Opera 11x-12x:
https://github.com/gera2ld/Vio...era_1164.oex
sid34 (15.10.2014 в 22:52):
Спасибо!! супер, все работает как надо
Ламер (14.10.2014 в 07:18):
Спасибо огромное!!! Респект!
Кое-как вкурил как добавить текст скрипта в гризМанки. Реклама при загрузке страницы появляется на долю секунды и исчезает.
ЗЫ. Пошаговая инструкция для "лам" не помешала бы.
XanTengri (24.09.2014 в 09:39):
Попробуйте так заменить блок UserScript
// ==UserScript==
// @name        NoYandexAds
// @namespace   yandsearch
// @description блок рекламы
// @include     http://*/yandsearch?*
// @include     https://*/yandsearch?*
// @version     1.04 (m)
// @author      ManHunter / PCL (©)
// @grant       none
// ==/UserScript==
Isaev (15.09.2014 в 20:17):
Так я же не просил сделать за меня) Пример ты сделал, разберусь на досуге
ManHunter (14.09.2014 в 19:41):
Isaev, это вряд ли, меня фтентакле нет, а для написания надо знать что там и как. Может на сайте пользовательских скриптов что-то есть?
Isaev (13.09.2014 в 22:37):
Нужно для контакта такой скриптик накатать, достала меня там реклама)
При чём, когда её закрываешь, они пишут "Данное объявление больше не будет Вам показываться." Но это всё бред, хоть 1000 раз её закрой))
Достали
Crab (04.09.2014 в 23:32):
Спасибо, наконец-то ЗАРАБОТАЛО!!!
Проблема заключалась в необходимости обновления Greasemonkey
Я ставил с сайта по ссылке в тексте. А всего-то надо было после установки в Фирефокс, дать ей автоматом обновиться. После обновления реклама ПРОПАЛА!!!
Правда, новая версия требует обязательной директивы  @grant none

ManHunter, люто, бешено респектую!
Реклама must die!!!
ManHunter (04.09.2014 в 23:26):
http://rghost.ru/57852966/image.png
Если на сайте яндекса GM отображается не так, то скрипт установлен неправильно. Других причин нет, скрипт 100% рабочий.
Crab (04.09.2014 в 23:14):
Проверил на другом компе - не работает.. Сломал моск окончательно.. Вроде на криворукость никогда не жаловался, а тут не получается, и всё тут.
ManHunter, дружище, выложи пожалуйста пошаговые инструкции как надо сделать, чтобы всё заработало. Достала эта рекламная срань..
ManHunter (04.09.2014 в 12:15):
1.0.4 прекрасно работает.
Crab (04.09.2014 в 11:26):
Создал скрипт через оболочку Greasemonkey, в config.xml он прописан.
НЕ РАБОТАЕТ!!!
Что не так??!?!!!
Я ИДИОТ, УБЕЙТЕ МЕНЯ КТО-НИБУДЬ!!!
Или Яндекс-Говно придумал очередную пакость?
ManHunter (02.09.2014 в 16:11):
Сложно сказать. Главное, что всё работает.
Данил (02.09.2014 в 16:10):
Кстати сказать, может руки у меня не оттуда растут, откуда нужно, но просто создание файла скрипта в папке с профилем никак не повлияло на работу оного. Пришлось шаманить с прописыванием скрипта вручную в конфиге самого "GM" config.xml.

Может я что делал не так?
Данил (02.09.2014 в 11:57):
Человече ты моё! Спасибо огромное! Эта блядская реклама (да простят меня за грубость) уже достала окончательно!! Когда на 10 результатов приходилось по +7 ссылок на рекламу - это уже перебор!
Ольга (26.08.2014 в 15:42):
Гранд Мерси! а то она так внезапно появилась и задолбала за пару дней.
Александр (22.08.2014 в 14:50):
Замечательный скрипт, а то аж пена изо рта шла при виде рекламы :) Спасибо автору!
ManHunter (23.07.2014 в 22:18):
Абсолютно нормально. Это же картинки и ссылки с Маркета, их я точно фильтровать никогда не буду.
Shiroi Bara (23.07.2014 в 22:15):
Попробуйте набрать в поиске "опасная бритва". В топе находится ссылка на яндекс маркет, а ниже картинка со списком производителей и ссылками на их сайты и подписью сверху "реклама". Соответственно вопрос - это новые происки админов яндекса или так задумано и картинка как бы связана с поисковой выдачей?
Ericson (23.07.2014 в 00:48):
ManHunter,спс за скрипт.Всё отрабатывается великолепно--реклама блочится, то что нужно
Студент (17.07.2014 в 15:48):
Просто думал пригодится конкретно для этой задачи. У меня заблокировано намного больше и иначе)))
AdBlock не спасёт когда юзер полезет сёрфить через левый браузер или хрень на Делфи с TWebBrowser. Полный блок доменного имени показал себя эффективнее.

avatars-fast.yandex.net / advertising.yandex.ru / an.yandex.ru / awaps.yandex.ru / bs.yandex.ru / direct.yandex.ru / mc.yandex.ru / metrika.yandex.ru / yabs.yandex.ru
Жека (16.07.2014 в 23:36):
Студент, я у себя ещё давным-давно заблокировал дополнительно вот эти адреса:
"www.tns-counter.ru"
"awaps.yandex.ru"
"yabs.yandex.ru/resource"

Никаких побочных эффектов пока не замечено.
ManHunter (16.07.2014 в 10:42):
AdBlock же есть, что еще для счастья не хватает? Остальное режется скриптом.
Студент (16.07.2014 в 10:15):
А если не секрет какой тогда антивирус не говно? =)
Заметил вот что, не все, но очень многие ссылки на рекламу начинаются либо с "direct.yandex.ru" либо с "yabs.yandex.ru", во всяком случае в моём браузере. Может это можно как-то использовать?
Жека (10.07.2014 в 17:14):
ManHunter, ну со времён MS-DOS, я им не пользовался, тогда у меня ещё и компьютера не было, а вот с 2004 по текущий момент до сих пор. И за все эти не малые годы у меня к нему никаких нареканий не было. Поставил и забыл. Наверное, у меня руки не от туда растут? Его секрет я давно понял, нех лезть в сякие там дополнительные настройки, если руки кривые, от этого и все его траблы. Ставлю всегда только стабильные, обкатанные версии, даже сейчас не перехожу на 2014, уже два года стоит 2013 и пашет всё замечательно.
ManHunter (10.07.2014 в 16:06):
Дело не в лицензии и не в деньгах, а в том, что касперский - говно еще со времен MS-DOS. Будет он бесплатным, ворованным, купленным, дареным, он всегда был и останется говном.
Жека (10.07.2014 в 16:03):
Станислав, ну-ну, продолжайте изобретать велосипед и тратить деньги, на сигареты с бухлом, в неделю больше, чем стоит годовая лицензия. Не парьте людям мозги про гуано... Хотя бы ради интереса попробовали как с этим справляется Касперский без всяких AdBlock и прочих бесплатных приложений.
ManHunter (10.07.2014 в 09:24):
Гугловскую рекламу прекрасно убирает AdBlock.
Станислав (10.07.2014 в 09:23):
ЦитатаА не проще поставить Kaspersky Internet Security и не парится, он отлично всё это говно банит.

А не проще вообще не ставить ваш гуаноКаспер?
Есть и другие ативирусы, это раз, во вторых смысл платить буржуям когда есть бесплатное решение, которое работает на УРА.
--------
Для Гугла бы подобное, хотя там реклама не раздражает, но второй серией, по просьбе читателей :)
Жека (09.07.2014 в 21:05):
А не проще поставить Kaspersky Internet Security и не парится, он отлично всё это говно банит.
sonsky (07.07.2014 в 21:03):
супер все работает: ) огромное человеческое спасибо.
ManHunter (16.06.2014 в 14:48):
Добавил
X-Wing Top Ace (16.06.2014 в 14:46):
ЦитатаХорошая новость и для пользователей браузера Chrome: он тоже понимает скрипты в формате Greasemonkey.

Нелишне еще добавить в статью, что аналогичный аддон для Оперы называется ViolentMonkey - а то для Огнелиса расширение названо, для Хрома тоже, а для Оперы нет.
Студент (16.06.2014 в 14:23):
Я это ещё в мае это заметил, хотел написать, да проблемы завертели.
У Яндекса не менее 3-х вариантов показа рекламы и он периодически меняет их. Например самый первый вариант скрипта то работал, то нет, то снова работал. Потому что грубо говоря утром реклама выводится в <li> а вечером в <div>.
А сейчас Яндексятники походу прочли Ваш блог и убрали фон элементов))) Зато в жёлтый div с классом serp-item__label явно подписали текстом: "Реклама"
Станислав (10.06.2014 в 22:41):
ManHunter, спасибо тебе душевное, пашет на все 100%, радости нет предела. С меня ссылки и посетители на ваш блог, как обычно. Аж, настроение поднялось. Даже пиво с рыбкой организовал.
ManHunter (10.06.2014 в 11:27):
Объединил обе версии в одном скрипте. Теперь два ставить не обязательно. На моих браузерах работает.
SVS (20.05.2014 в 14:33):
Иногда горы лучше обходить. Таким обходом я называю нигму )) пока работает без срани. Но в арсенале не мешает иметь всякие средства, так что спасибо.

Специально на яндекс сходила (которым не пользуюсь), выяснилось, что у меня в качестве рекламы выдаются другие номера строк выдачи - 11, 12, 13, 14, 21, 22, 23, 24, 31, 32, 33, 34...
Студент (29.04.2014 в 14:22):
У меня Greasemonkey ищет любые элементы, в имени класса которых присутствует подстрока "banner", плюс некоторый список имён классов для mail.ru (делал для родственников, они там сидят, куча рекламы).
Ток не display='none', а полностью удаление, а то swf со звуком как-то раз было, орало.
И у меня было с таймером, про DOMNodeInserted не знал (ну не JS-ник я :)). А раз уж DOMNodeInserted, почему не использовать в нём "event.target"?
Попробую скрестить вашу конфетку со своим убожеством. :3


З.Ы. Цитирую из каментов к Flash Drive Protector: «NOD уже давно стал самым натуральным говном» - эм, новые версии такой же отзыв имеют? А что тогда посоветовали бы вы?
ManHunter (29.04.2014 в 14:02):
Гугл пока прекрасно чистится AdBlock'ом. Ключевое слово "пока".
SAY (29.04.2014 в 14:01):
Жаль пользуюсь гуглом, а то бы пригодилось.
semenov (29.04.2014 в 06:53):
Вот почему акции яндекса на 10% упали+)
ManHunter (28.04.2014 в 16:25):
Greasemonkey вообще классная штука. В некоторых случаях очень облегчает жизнь.
X-Wing Top Ace (28.04.2014 в 16:14):
Полезный скрипт, спасибище! Сразу скопипастил, скинул в каталог юзерских скриптов, работает. Кстати, под Оперой работал даже без расширения ViolentMonkey (аналог GreaseMonkey под Огнелисом), по крайней мере у меня. Хотя ViolentMonkey для надежности поставил.
Doxtup (28.04.2014 в 15:25):
ManHunter, блин вот это тема, берет за живое, только чет последнее время ИКСяндексом уже не пользуюсь, но на будущее конечно учту.
ManHunter (28.04.2014 в 13:40):
Да, так действительно красивее. Спасибо!
еремушка-дурачок (28.04.2014 в 13:22):
Картинка к статье повеселила :)) DOMNodeInserted вместо таймера?

Добавить комментарий

Заполните форму для добавления комментария
Комментарии отключены администратором сайта
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2018
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.07 сек. / MySQL: 2 (0.0023 сек.) / Память: 4.75 Mb
Наверх