// ==UserScript==
// @name Shortlink Dodger
// @namespace Shortlink Dodger
// @version 1.0
// @description Quickly bypasses shortlinks to enhance your browsing experience. This script automatically navigates through common URL shorteners, saving you time and hassle with every click.
// @author AmineDev
// @license All Rights Reserved
// @icon https://i.ibb.co/N3cwK3X/shortlink-dodger.png
// @match *://*/recaptcha/*
// @match *://tpi.li/*
// @match *://blogmystt.com/*
// @match *://cety.app/*
// @match *://fc-lc.xyz/*
// @match *://gamezizo.com/*
// @match *://forex-trnd.com/*
// @match *://falpus.com/*
// @match *://oii.la/*
// @match *://wp2hostt.com/*
// @match *://expertvn.com/*
// @match *://ielts-isa.edu.vn/*
// @match *://handydecor.com.vn/*
// @match *://top10cafe.se/*
// @match *://*.mega*.in/*
// @match *://mitly.us/*
// @match *://*.sonjuegosgratis.com/*
// @match *://autodime.com/*
// @match *://linx.cc/*
// @match *://surflink.tech/*
// @match *://coincroco.com/*
// @match *://sox.link/*
// @match *://shrinkme.ink/*
// @match *://themezon.net/*
// @match *://en.mrproblogger.com/*
// @match *://oii.io/*
// @match *://tmail.io/*
// @match *://*linksly.co/*
// @match *://mrproblogger.com/*
// @match *://m.imagenesderopaparaperros.com/*
// @match *://fx4ever.com/*
// @match *://fx-22.com/*
// @match *://gold-24.net/*
// @match *://forexrw7.com/*
// @match *://linkjust.com/*
// @match *://carewave.xyz/*
// @match *://insfly.pw/*
// @run-at document-end
// ==/UserScript==
(function() {
'use strict';
const textConfig = {
'tpi.li': [{ targetText: 'Continue', delay: 2000 }, { targetText: 'Get Link', delay: 4000 }],
'blogmystt.com': [{ targetText: 'Get link here', delay: 5000 }],
'shrinkme.ink': [{ targetText: 'Click here to continue', delay: 2000 }],
'themezon.net': [{ targetText: 'Continue', delay: 2000 }, { targetText: 'Go To Url', delay: 2000 }],
'en.mrproblogger.com': [{ targetText: 'Get Link', delay: 4000 }],
'cety.app': [{ targetText: 'Continue', delay: 2000 }, { targetText: 'I am not a robot', delay: 2000 }, { targetText: 'Go ->', delay: 4000 }],
'fc-lc.xyz': [{ targetText: 'Click here to continue', delay: 2000 }],
'gamezizo.com': [{ targetText: 'Click To Verify', delay: 2000 }, { targetText: 'Continue...', delay: 2000 }, { targetText: 'Click here to continue', delay: 16000 }, { targetText: 'Get Link', delay: 4000 }],
'forex-trnd.com': [{ targetText: 'Get Link', delay: 4000 }],
'oii.la': [{ targetText: 'Continue', delay: 2000 }, { targetText: 'Get Link', delay: 4000 }],
'wp2hostt.com': [{ targetText: 'Get link here', delay: 5000 }],
'handydecor.com.vn': [{ targetText: 'Click here to continue', delay: 30000 }, { targetText: 'Click here to Unlock Link', delay: 5000 }, { targetText: 'Getlink', delay: 2000 }],
'get.megaurl.in': [{ targetText: 'Click here to continue', delay: 3000 }, { targetText: 'Get Link', delay: 4000 }],
'expertvn.com': [{ targetText: 'Click here to continue', delay: 30000 }, { targetText: 'Click here to Unlock Link', delay: 5000 }, { targetText: 'Getlink', delay: 2000 }],
'get.megafly.in': [{ targetText: 'Click here to continue', delay: 3000 }, { targetText: 'Get Link', delay: 4000 }],
'ielts-isa.edu.vn': [{ targetText: 'Click here to continue', delay: 30000 }, { targetText: 'Click here to Unlock Link', delay: 5000 }, { targetText: 'Getlink', delay: 2000 }],
'mitly.us': [{ targetText: 'Click here to continue', delay: 2000 }, { targetText: 'Get Link', delay: 4000 }],
'autodime.com': [{ targetText: 'Next - Continue', delay: 10000 }, { targetText: 'Click here to Continue', delay: 5000 }],
'linx.cc': [{ targetText: 'Get Link', delay: 4000 }],
'surflink.tech': [{ targetText: 'Show Captcha Verification', delay: 17000 }, { targetText: 'Step', delay: 17000 }],
'coincroco.com': [{ targetText: 'Step', delay: 12000 }],
'sox.link': [{ targetText: 'Get Link', delay: 4000 }],
'oii.io': [{ targetText: 'Click here to continue', delay: 2000 }],
'linksly.co': [{ targetText: 'Human Verification', delay: 2000 }],
'go.linksly.co': [{ targetText: 'Get Link', delay: 4000 }],
'm.imagenesderopaparaperros.com': [{ targetText: 'Get Link', delay: 4000 }, { targetText: 'Ir al enlace', delay: 4000 }],
'insfly.pw': [{ targetText: 'Get Link', delay: 4000 }],
};
const idConfig = {
'carewave.xyz': [{ targetId: 'ad', delay: 24000 }],
'tmail.io': [{ targetId: 'next', delay: 2000 }, { targetId: 'glink', delay: 5000 }, { targetId: 'surl', delay: 4000 }],
'mrproblogger.com': [{ targetId: 'btn2', delay: 5000 }, { targetId: 'tp-snp2', delay: 5000 }],
'm.imagenesderopaparaperros.com': [{ targetId: 'invisibleCaptchaShortlink', delay: 2000 }],
'fx4ever.com': [{ targetId: 'next', delay: 5000 }, { targetId: 'nextbutton', delay: 2000 }],
'fx-22.com': [{ targetId: 'nextbutton', delay: 5000 }],
'gold-24.net': [{ targetId: 'nextbutton', delay: 5000 }],
'forexrw7.com': [{ targetId: 'nextbutton', delay: 5000 }],
'linkjust.com': [{ targetId: 'click', delay: 4000 }],
};
const classConfig = {
'forex-trnd.com': [{ targetClass: 'g-recaptcha btn btn-primary', delay: 5000 }],
};
function checkId(element, targetId) {
return targetId ? element.id === targetId : true;
}
function checkClass(element, targetClass) {
return targetClass ? element.classList.contains(targetClass) : true;
}
const currentDomain = window.location.hostname;
function clickTextTargetElement(targets) {
targets.forEach(({ targetText, delay }) => {
setInterval(() => {
const elements = document.querySelectorAll('*');
elements.forEach(element => {
if (element.textContent.includes(targetText)) {
if (element.tagName === 'A' && element.getAttribute('target') === '_blank') {
element.setAttribute('target', '');
}
element.click();
}
});
}, delay);
});
}
function clickIdTargetElement(targets) {
targets.forEach(({ targetId, delay }) => {
setInterval(() => {
const elements = document.querySelectorAll('*');
elements.forEach(element => {
if (checkId(element, targetId)) {
if (element.tagName === 'A' && element.getAttribute('target') === '_blank') {
element.setAttribute('target', '');
}
element.click();
}
});
}, delay);
});
}
function clickClassTargetElement(targets) {
targets.forEach(({ targetClass, delay }) => {
setInterval(() => {
const elements = document.querySelectorAll('*');
elements.forEach(element => {
if (checkClass(element, targetClass)) {
if (element.tagName === 'A' && element.getAttribute('target') === '_blank') {
element.setAttribute('target', '');
}
element.click();
}
});
}, delay);
});
}
if (textConfig[currentDomain]) {
clickTextTargetElement(textConfig[currentDomain]);
}
if (idConfig[currentDomain]) {
clickIdTargetElement(idConfig[currentDomain]);
}
if (classConfig[currentDomain]) {
clickClassTargetElement(classConfig[currentDomain]);
}
})();
(function() {
'use strict';
const targetTexts = ["Click here to Continue", "Continue"];
function clickInput() {
const inputs = document.querySelectorAll('input[type="button"], input[type="submit"]');
inputs.forEach(input => {
if (targetTexts.some(text => input.value.includes(text))) {
input.click();
}
});
}
setInterval(clickInput, 2000);
})();
(function() {
'use strict';
const hiddenInputIDs = ['shortShort'];
function useHiddenInputValues() {
hiddenInputIDs.forEach(id => {
const hiddenInput = document.getElementById(id);
if (hiddenInput) {
const value = hiddenInput.value;
window.location.href = value;
}
});
}
setTimeout(useHiddenInputValues, 2000);
})();
(function() {
'use strict';
const buttonClasses = ['button.link-button'];
function clickButtons() {
buttonClasses.forEach(className => {
const button = document.querySelector(`.${className}`);
if (button) {
button.click();
}
});
}
setInterval(clickButtons, 2000);
})();
(function() {
'use strict';
window.addEventListener('load', function() {
setTimeout(() => {
const button = document.querySelector('.recaptcha-checkbox-border');
if (button) {
button.click();
}
}, 3000);
});
})();