Как заблокировать рекламу на startpage.com?

8

Я попробовал следующее, это не имеет никакого эффекта:

startpage.com##[style*="background-color:#F5F9FF;"]

Есть идеи, как это решить?

Воспроизвести: перейдите на https://startpage.com/do/search - найдите, например, для adblock. Вверху и внизу страницы вы увидите противные голубые рамки с надписью «Реклама, связанная с рекламным блоком»:

введите описание изображения здесь

Это с Iceweasel (Firefox 38.2.1) и Adblock Edge 2.1.9.1.


Если это невозможно, какие безопасные / конфиденциальные и не содержащие рекламы сайты вы рекомендуете в качестве альтернативы IxQuick и Startpage?

0__
источник
Если вы не против использования greasemonkey, посмотрите мой ответ ниже.
Дэвид Постилл
Я не смог найти рекламу, отображаемую в Chrome с установленным Adblock. Даже если я отключил расширение Adblock, я мог видеть текст, который отображался на вашем скриншоте. : / Итак, я предполагаю, что одно из расширений, которое вы используете при добавлении рекламы на этой странице. Не могли бы вы отключить все расширения, перезапустить браузер и проверить еще раз.
Счастливчик
2
Честно говоря, я не вижу проблемы с Google; все сайты отслеживают вас в любом случае (нравится вам это или нет, так работает Интернет), и почти нет рекламы (кроме рекламных ссылок, которые вы просто игнорируете).
AStopher 29.09.15

Ответы:

6

Есть идеи, как это решить?

Рассматриваемые объявления находятся в div с идентификатором "spon_links".

<div id="spon_links">

Вы можете использовать скрипт Greasemonkey, чтобы удалить эти div.


Решение 1

Это подтверждается как работа в Firefox при использовании рекламного блокировщика uBlock Origin.

// ==UserScript==
// @name        startpage.com remove ads
// @namespace   startpage.com
// @description Removes ads from startpage.com before they are displayed.
// @include     https://startpage.com/*
// @include     https://*.startpage.com/*
// @run-at      document-start
// @version     2015-09-29
// @grant       GM_addStyle
// ==/UserScript==

GM_addStyle("div#spon_links { display: none !important}");

Решение 2

Не проверено.

Заменить 'ads'с 'spon_links'в примере сценария ниже.

4.9. Удаление элемента

Вы можете использовать Greasemonkey для удаления целых кусков страницы одним махом с помощью функции removeChild.

Пример: удалить боковую панель рекламы

Это предполагает наличие элемента с идентификатором «ads».

var adSidebar = document.getElementById('ads');
if (adSidebar) {
    adSidebar.parentNode.removeChild(adSidebar);
}

Удаление элемента с помощью removeChildтакже удалит весь контент внутри него. Например, если вы удалите <table>элемент, это также удалит все его ячейки таблицы ( <td>элементы).

Источник 4.9. Удаление элемента

ДэвидПостилл
источник
Спасибо. По-видимому, это либо ошибка в Adblock Edge, либо какие-то контрмеры, предпринятые сайтом. Потому что я только что заметил , что объявления внеdiv.spon_links когда Adblock края включены. У него есть правило фильтра для spon_links. Возможно, есть какой-то JS, который перемещает olэлементы куда-то еще, когда spon_linksфильтруется.
0.09.09.15
2

После уведомления @ DavidPostill я снова посмотрел на структуру страницы. Похоже, что текстовые объявления перемещаются за пределы, div.spon_linksкогда включен Adblock Edge, для которого действительно есть правило фильтрации spon_links. Является ли это неправильным поведением Adblock Edge или каким-либо противодействием со стартовой страницы, я не знаю.

Существует более простое решение, чем добавление пользовательского скрипта Greasemonkey - простая замена Adblock Edge на uBlock также решила проблему.


При дальнейшем расследовании реклама исчезает только при включенном uBlock, когда Adblock Edge полностью отключен одновременно («Отключить везде»). Даже если я отключу его только для стартовой страницы («Отключить на startpage.com»), сайт переместит рекламу за пределы spon_linksконтейнера. Я объясняю это тем, что стартовой странице каким-то образом удается получить доступ к моим настройкам надстроек и проверить, включен ли вообще Adblock . Может ли это быть так противно ?!


Используя подход Дэвида Greasemonkey и removeChild, я придумал следующее решение, которое все еще работает, когда установлен Adblock Edge. Кажется, нужно подождать, пока страница загрузится и поиграется, избегая рекламного блока, пока вы, наконец, не сможете найти и удалить нарушающие элементы:

// ==UserScript==
// @name        startpage/ixquick remove ads
// @namespace   startpage.com
// @description Removes ads from startpage/ixquick before they are displayed.
// @include     https://startpage.com/*
// @include     https://*.startpage.com/*
// @include     https://ixquick.com/*
// @include     https://*.ixquick.com/*
// @run-at      document-end
// @grant       none
// @version     2015-09-29
// ==/UserScript==

var fun = function() {
  var results = document.getElementById('bottom-result-container');
  if (results) {
    var ols = results.getElementsByTagName('ol');
    for (i = 0; i < ols.length; i++) {
      var ol = ols[i];
      var ps = ol.getElementsByTagName('p');
      for (j = 0; j < ps.length; j++) {
        var p = ps[j];
        if (p.className == 'head2') {
          var spans = p.getElementsByTagName('span');
          for (k = 0; k < spans.length; k++) {
            if (spans[k].innerHTML.contains("Ads related to")) {
              ol.innerHTML = '';
            }
          }
        }
      }
    }
  }
};
setTimeout(fun, 1);

(Извините, мой JavaScript немного ржавый, возможно, проще с jQuery.)

0__
источник
Я также использую uBlock Origin и видел рекламу. Этот скрипт исправляет это. GM_addStyle("div#spon_links { display: none !important}");
Дэвид Постилл
Да, это так противно. Там есть какой-то JS, который определенно проверяет наличие некоторых (Chrome?) Расширений, и именно там он обнаруживает adblock.
Кевин Браун,
0

Измените расширение для блокировки рекламы на uBlock Origin . Страница отображается нормально и без рекламы в uBlock Origin с Firefox 41.0 или Chrome 44.0.2403.155 m.

снимок экрана страницы результатов поиска startpage.com в Firefox 41 с uBlock Origin

Включите фильтры из «Fanboy + Easylist-Merged Ultimate List» (уже содержит списки EasyList, EasyPrivacy, Enhanced Tracking, Annoyance и Social Blocking - так что нет необходимости также включать эти списки фильтров).

galacticninja
источник
0

В AdblockPro я смог заблокировать div, добавив это правило:

startpage.com###sponsored_csa1

Я использовал помощник по скрытию элементов ABP, чтобы выбрать для меня родительский div, и принял его правило по умолчанию.

AdBlock Edge - это форк ABP, так что я бы ожидал, что там будет работать правило и в ABE. Однако ABE был прекращен разработчиком, поэтому вам действительно следует либо вернуться к ABP (и просто отключить приемлемую функцию рекламы), либо переключиться на uBlock.

uBlock может быть лучшим выбором и с технической точки зрения; он должен иметь меньшую нагрузку на память / процессор в FF, чем ABP. Он также полностью работает с предстоящим обновлением электролиза для Firefox, которое разделяет пользовательский интерфейс и вкладки верхнего уровня на отдельные процессы и запускает последний с более жесткими настройками, что должно затруднить использование его авторами вредоносного ПО (IE и Chrome сделали это для года). Это потенциально еще в конце года. (FF43 / Dec 14 был их целевой датой на некоторое время; если они это сделают, это зависит от того, насколько хорошо выглядит телеметрия в сборках альфа / бета и насколько мало открытых ошибок.)

Дэн возится с камином
источник