Anti-bot Solver (Trump faucet)

Anti-bot links Auto mode

Size

1.9 KB

Version

1.0

Created

Mar 21, 2026

Updated

about 5 hours ago

1
2// ==UserScript==
3// @name         Anti-bot Solver (Trump faucet)
4// @namespace    Anti-bot links Auto Solver
5// @version      1.0
6// @description  Anti-bot links Auto mode
7// @author       Shnethan
8// @match        *://earn-trump.com/*
9// @icon         https://earn-trump.com/favicon.ico
10// @license      GPL-3.0-or-later
11// @grant        none
12// @run-at       document-idle
13
14// @downloadURL https://update.greasyfork.org/scripts/564318/Anti-bot%20Solver%20%28Trump%20faucet%29.user.js
15// @updateURL https://update.greasyfork.org/scripts/564318/Anti-bot%20Solver%20%28Trump%20faucet%29.meta.js
16// ==/UserScript==
17
18(() => {
19    'use strict';
20
21    let c = false;
22
23    const g = () => {
24        let t = document.body.textContent || "";
25        let m = t.match(/Click (?:in )?this order:\s*([A-Z,\s→-]+)/i)
26             || t.match(/([A-Z]{2,})[,\s]+([A-Z]{2,})[,\s]+([A-Z]{2,})/);
27        if (!m) return null;
28        return m[1]
29            ? m[1].toUpperCase().split(/[,→\-\s]+/).map(x => x.trim()).filter(Boolean)
30            : [m[1], m[2], m[3]];
31    };
32
33    const w = x => {
34        let e = document.querySelectorAll('button,a,div,span,p,li,td');
35        for (let el of e) {
36            if (el.textContent && el.textContent.toUpperCase().trim() === x) {
37                k(el);
38                return true;
39            }
40        }
41        for (let el of e) {
42            if (el.textContent && el.textContent.toUpperCase().includes(x)) {
43                k(el);
44                return true;
45            }
46        }
47        return false;
48    };
49
50    const k = el => {
51        try { el.click(); }
52        catch { el.dispatchEvent(new MouseEvent('click', { bubbles:true, cancelable:true })); }
53        console.log("Clicked:", el.textContent.trim());
54    };
55
56    const s = a => a.forEach((x,i) => setTimeout(() => w(x), i*800));
57
58    const i = () => {
59        if (c) return;
60        let a = g();
61        if (a) { s(a); c = true; }
62        else { setTimeout(i, 500); }
63    };
64
65    i();
66
67})();
68