Decode encoded URLs in links and replace them with the decoded URL
// ==UserScript== // @name Tracking Redirect Nuker // @namespace http://tampermonkey.net/ // @version 0.2.2 // @description Decode encoded URLs in links and replace them with the decoded URL // @author yodaluca23 // @license GNU GPLv3 // @match *://*/* // @exclude *://*.indeed.com/* // @exclude *://indeed.com/* // @grant none // ==/UserScript== (function() { 'use strict'; function decodeAndReplaceLinks() { const links = document.querySelectorAll('a'); links.forEach(link => { const href = link.getAttribute('href'); const encodedIndexHttps = href.indexOf('https%3A%2F%2F'); const encodedIndexHttp = href.indexOf('http%3A%2F%2F'); if (encodedIndexHttps !== -1 || encodedIndexHttp !== -1) { const encodedPart = href.substring(Math.max(encodedIndexHttps, encodedIndexHttp)); const decodedPart = decodeURIComponent(encodedPart); link.setAttribute('href', decodedPart); } }); } // Run once when the page loads decodeAndReplaceLinks(); // Run every time a change is detected on the page const observer = new MutationObserver(decodeAndReplaceLinks); observer.observe(document.body, { subtree: true, childList: true }); })();