Greasy Fork

No "9GAGGER"

Remove 9gag's terrible promoted posts

当前为 2023-01-21 提交的版本,查看 最新版本

// ==UserScript==
// @name         No "9GAGGER"
// @namespace    http://tampermonkey.net/
// @version      0.5
// @description  Remove 9gag's terrible promoted posts
// @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 = "woke;politics;dark humor;dark humour;lgbt;russia;ukraine;latest news;german;rowling;climate;brazil;brasil;marvel;mcu;election;vote;lula;bozo;bolso;whame;qatar;world cup;relationship;joe rog;rogan;generation;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("ui-post-tags")].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...
})();