您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Autofills email, waits for CAPTCHA and automates LTC claim on dashboard and faucet pages.
// ==UserScript== // @name Auto Claim Earncryptowrs // @namespace http://tampermonkey.net/ // @version 1.0 // @description Autofills email, waits for CAPTCHA and automates LTC claim on dashboard and faucet pages. // @author Rubystance // @license MIT // @match https://earncryptowrs.in/* // @grant none // ==/UserScript== (function () { 'use strict'; const email = "YOUR_FAUCETPAY_EMAIL_HERE"; // <<== Replace this with your FaucetPay email function waitForElement(selector, timeout = 10000) { return new Promise((resolve, reject) => { const intervalTime = 100; let elapsed = 0; const interval = setInterval(() => { const el = document.querySelector(selector); if (el) { clearInterval(interval); resolve(el); } else if (elapsed >= timeout) { clearInterval(interval); reject(`Element ${selector} not found after ${timeout}ms.`); } elapsed += intervalTime; }, intervalTime); }); } async function autoLogin() { if (window.location.pathname === "/" || window.location.pathname === "/index") { try { const input = await waitForElement('input[name="wallet"]'); input.value = email; const observer = new MutationObserver((mutations, obs) => { const verificationMessage = document.querySelector('.iconcaptcha-modal__body-title'); if (verificationMessage && verificationMessage.textContent.includes("Verification complete")) { const loginBtn = document.querySelector('button[type="submit"]'); if (loginBtn) { loginBtn.click(); obs.disconnect(); } } }); observer.observe(document.body, { childList: true, subtree: true }); } catch (e) { console.error("Error in autoLogin:", e); } } } async function goToFaucetPage() { if (window.location.pathname === "/app/dashboard") { const claimLink = await waitForElement('a[href*="/app/faucet?currency=LTC"]'); claimLink.click(); } } async function autoClaim() { if (window.location.pathname.startsWith("/app/faucet")) { const observer = new MutationObserver((mutations, obs) => { const verificationMessage = document.querySelector('.iconcaptcha-modal__body-title'); if (verificationMessage && verificationMessage.textContent.includes("Verification complete")) { const claimBtn = document.querySelector('button.claim-button'); if (claimBtn) { claimBtn.click(); obs.disconnect(); } } }); observer.observe(document.body, { childList: true, subtree: true }); } } window.addEventListener('load', () => { autoLogin(); goToFaucetPage(); autoClaim(); }); })();