Remove unwanted news

This script helps you to filter out the news that you don't want to see. This example works for zeit.de, spiegel.de and watson.ch (popular swiss newssite)

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Tendrás que instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Tendrás que instalar una extensión como Tampermonkey antes de poder instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

// ==UserScript==
// @name     Remove unwanted news
// @version  1.5
// @grant    none
// @namespace news_filtering
// @description This script helps you to filter out the news that you don't want to see. This example works for zeit.de, spiegel.de and watson.ch (popular swiss newssite)
// @license MIT
// @include        https://www.watson.ch/*
// @match https://www.zeit.de/*
// @match https://www.spiegel.de/*
// @match https://www.reddit.com/*
// @match https://www.facebook.com/*
// @match https://www.nzz.ch/*
// @match https://www.tagblatt.ch/*
// @match https://www.tagesanzeiger.ch/*
// @match https://zueriost.ch/*
// @match https://www.vaterland.li/*
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js 
// @require https://cdnjs.cloudflare.com/ajax/libs/notify/0.4.2/notify.min.js
// ==/UserScript==
//https://gist.github.com/BrockA/2625891

function truncate(str, n){
  return (str.length > n) ? str.slice(0, n-1) + '…' : str;
};

var inform_about_removal = false;

function recurseEl(father,element) {
  if(element.childElementCount === 0) {
    search = /(william)|(stories)|(sponsored)|(kardashian)|(heizen)|(strom)|(macron)|(merz)|(elon)|(ukraine)|(selenskyj)|(liveticker)|(influencer)|(fifa)|(messi)|(infantino)|(corona)|(putin)|(bolsonaro)|(trump)|(trumps)|(arabischen)|(arabisch)|(jong)|(musk)|(promis)|(promi)|(katar)|(boateng)|(russland)|(russen)|(nati)|(weltmeister)/
		if (element.innerText?.toLowerCase().match(search)){
			console.log("removing" + element.innerText)
      if (inform_about_removal){
        $.notify("Removed: " + truncate(element.innerText,60),"success",{position:"right bottom"});
  		}
      element.textContent = '';
      father.style.display = "none";
    }
  } else {
    Array.from(element.children).forEach(child => {
      recurseEl(father,child);
    });
  }
}

function updateHTML()
{
  var href = window.location.host;
  if (href == "www.zeit.de"){
		var selector =  ".zon-teaser-standard, .zon-teaser-wide, .zon-teaser-poster"
  }
  else if (href == "www.watson.ch"){
  	var selector = '.region'
  }
  else if (href == "www.spiegel.de"){
  	var selector = "article"
  }
  else if (href == "www.tagblatt.ch"){
  	var selector = ".widget--1of3, .widget--2of3, .widget--3of3, .widget--1of2, .widget--1of2-top, .widget--2of2"
  }
  else if (href == "www.nzz.ch"){
    var selector = ".widget--article , .teaser--1of3-news, .teaser--1of3-compact"
  }
  else if (href == "www.tagesanzeiger.ch"){
    var selector = ".ArticleTeaser_colorbox__3dUIa, article"
  }
  else if (href == "zueriost.ch"){
    var selector = ".col-xs-12"
  }
  else if (href == "www.vaterland.li"){
    var selector = ".defaultteaser"
  }
  else if (href == "www.facebook.com"){
		var selector = 'svg[viewBox="0 0 20 20"]' //search for the 3 dots in a post
  }
  else if (href == "www.reddit.com"){
    var selector = ".link"
  }
  $(selector).each(function(i, obj) {
    try {
        if (href == "www.facebook.com"){
          var obj = obj.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement
          console.log(obj.innerText.toLowerCase())  
          recurseEl(obj,obj);
        }
        else{
          recurseEl(obj,obj);
        }
    	}
    catch (error) {
      console.error(error);
    }
  });
};

var intervalId = window.setInterval(function(){
	updateHTML();
}, 2000);