Remove 9gag's terrible promoted posts and spam
目前為
// ==UserScript==
// @name No "9GAGGER"
// @namespace http://tampermonkey.net/
// @version 0.4
// @description Remove 9gag's terrible promoted posts and spam
// @author You
// @match https://9gag.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=9gag.com
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
let forbiddenTags = "rekt;black;white;media;news;modern;usa;true;truth;opress;nazi;not funny;religion;lgb;gay;patriarchy;netflix;politic;liberal;democrat;libs;groom;diversity;ariel;mermaid;male;sigma;alpha;beta;based;lord of the rings;rings of power;politics;sjw;trump;jordan;peterson;women;woman;girl;alphabet;lgbt;latest news;alt right;altright;leftist;socialism;communism;china;russia;ukraine;covid;corona;rona;she-;groomer;sex;censure;trans;cancel;elon;musk;triggered;woke;repost;troon;clown;tranny;leftard;netflix;feminism;nazi,censored;censor;cesored;racis;lotr;gender;pronoun".split(";");
setInterval(() => {
let authors = document.getElementsByClassName("ui-post-creator__author")
for (let i = 0; i < authors.length; i++) {
try {
[...document.getElementsByClassName("post-tag")].forEach(tag => {
let text = tag.innerText.toLowerCase();
for (let k = 0; k < forbiddenTags.length; k++) {
if (text.indexOf(forbiddenTags[k]) !== -1) {
console.log("Removing bad tag - " + text);
tag.parentElement.parentElement.removeChild(tag.parentElement);
break;
}
}
});
[...document.getElementsByTagName("h1")].forEach(title => {
let text = title.innerText.toLowerCase();
if (text.trim() === "") {
console.log("Removing bad title - empty title");
let article = title.parentElement.parentElement.parentElement;
article.parentElement.removeChild(article);
}
for (let k = 0; k < forbiddenTags.length; k++) {
if (text.indexOf(forbiddenTags[k]) !== -1) {
console.log("Removing bad title - " + text);
let article = title.parentElement.parentElement.parentElement;
article.parentElement.removeChild(article);
break;
}
}
});
[...document.getElementsByClassName("down")].forEach(down => {
if (down.innerText == "•") {
console.log("Removing post - hidden votes");
let shit = down.parentElement.parentElement.parentElement.parentElement;
shit.parentElement.removeChild(shit);
}
});
if (authors[i].innerText == "9GAGGER") {
let post = authors[i].parentElement.parentElement.parentElement.parentElement;
console.log("Removing Post", post.innerText);
post.parentElement.removeChild(post);
}
} catch (e) {
console.debug("Skipping post due to error.", e, authors[i]);
}
}
}, 100);
// Your code here...
})();