Probé lo siguiente, no tiene ningún efecto:
startpage.com##[style*="background-color:#F5F9FF;"]
Alguna idea de como resolver esto?
Para reproducir: Ir ahttps://startpage.com/do/search- busque, por ejemplo adblock
, . Verás desagradables cuadros de color azul claro en la parte superior e inferior de la página que dicen "Anuncios relacionados con Adblock":
Esto es con Iceweasel (Firefox 38.2.1) y Adblock Edge 2.1.9.1.
Si no es posible, ¿qué sitios seguros, respetuosos de la privacidad y sin publicidad recomienda como alternativa a IxQuick y Startpage?
Respuesta1
Alguna idea de como resolver esto?
Los anuncios en cuestión están en un div con ID "spon_links".
<div id="spon_links">
Puedes usar unmono grasoscript para eliminar estos divs.
Solución 1
Se confirma que esto funciona en Firefox cuando se usa el bloqueador de anuncios 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}");
Solución 2
No probado.
Reemplace 'ads'
con 'spon_links'
en el script de ejemplo a continuación.
4.9. Eliminando un elemento
Puedes usar Greasemonkey para eliminar fragmentos enteros de una página de una sola vez, con la función removeChild.
Ejemplo: eliminar una barra lateral de anuncios
Esto supone que existe un elemento cuyo ID es "anuncios".
var adSidebar = document.getElementById('ads'); if (adSidebar) { adSidebar.parentNode.removeChild(adSidebar); }
Eliminar un elemento con
removeChild
también eliminará todo el contenido que contiene. Por ejemplo, si elimina un<table>
elemento, esto también eliminará todas sus celdas de la tabla (<td>
elementos).
Respuesta2
Actualmente agregando:
startpage.com##.clicktrackedAd_js
a mi lista de filtros de uBlock Orgin hizo el trabajo. Ya no aparecían resultados de búsqueda de anuncios.
Respuesta3
Tras el aviso de @DavidPostill, volví a mirar la estructura de la página. Parece que los anuncios de texto se mueven fuera de div.spon_links
cuando Adblock Edge está habilitado, lo que de hecho tiene una regla de filtrado para spon_links
. Si se trata de un mal comportamiento de Adblock Edge o alguna contramedida de Startpage, no lo sé.
Existe una solución más sencilla que agregar un script personalizado de Greasemonkey; simplemente cambiar Adblock Edge por uBlock también resolvió el problema.
Si investigamos más a fondo, los anuncios solo desaparecen con uBlock habilitado cuando Adblock Edge está completamente deshabilitado al mismo tiempo ("Desactivar en todas partes"). Incluso si lo desactivo solo para la página de inicio ("Desactivar en startpage.com"), el sitio mueve los anuncios fuera del spon_links
contenedor. Mi explicación es queLa página de inicio de alguna manera logra acceder a mis preferencias de complementos y verifica si Adblock está generalmente habilitado. ¡¿Podría ser tan desagradable?!
Utilizando el enfoque de David de Greasemonkey y removeChild
, se me ocurrió la siguiente solución que todavía funciona cuando Adblock Edge está instalado. Parece que hay que esperar hasta que la página se haya cargado y jugar a evitar el bloqueo de anuncios, hasta que finalmente puedas localizar y eliminar los elementos ofensivos:
// ==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);
(Lo siento, mi JavaScript está un poco oxidado, probablemente sea más fácil con jQuery).
Respuesta4
En AdblockPro pude bloquear el div agregando esta regla:
startpage.com###sponsored_csa1
Utilicé el Ayudante de ocultación de elementos ABP para seleccionar el div principal y acepté su regla predeterminada.
AdBlock Edge es una bifurcación de ABP, por lo que esperaría que una regla funcione también en ABE. Sin embargo, ABE ha sidointerrumpidopor su desarrollador, por lo que debería volver a ABP (y simplemente desactivar la función de anuncios aceptables) o cambiar a uBlock.
uBlock también podría ser la mejor opción desde un punto de vista técnico; se supone que tiene una carga de memoria/cpu más ligera en FF que en ABP. También funciona completamente con los próximoselectrólisisactualización para Firefox que divide la interfaz de usuario y las pestañas de nivel superior en procesos separados y ejecuta este último en configuraciones más restringidas, lo que debería dificultar su explotación por parte de los autores de malware (IE y Chrome han hecho esto durante años). Su eta es potencialmente tan pronto como a finales de año. (FF43/14 de diciembre ha sido su fecha objetivo por un tiempo; si lo logran depende de qué tan bien se vea la telemetría en las versiones alfa/beta y qué tan pequeña sea la cantidad de errores abiertos).