您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
This script claims all Pick.io faucets one by one (IconCaptcha)
// ==UserScript== // @name Pick.io 24/7 video-in-description (ON) // @namespace http://tampermonkey.net/ // @version 2.2 // @description This script claims all Pick.io faucets one by one (IconCaptcha) // @author 👽 // @match https://www.google.com/* // @match https://tronpick.io/* // @match https://litepick.io/* // @match https://dogepick.io/* // @match https://bnbpick.io/* // @match https://solpick.io/* // @match https://tonpick.game/* // @match https://polpick.io/* // @match https://suipick.io/* // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; let lastActionTime = Date.now(); // Track the last time an action was performed const RETRY_INTERVAL = 5000; // Retry interval in milliseconds (5 seconds) const WAIT_TIME = 5000; // Time to wait before redirecting // Function to update last action time function updateLastActionTime() { lastActionTime = Date.now(); } // Function to refresh the page if no action happens for 70 seconds function checkForInactivity() { const currentTime = Date.now(); const elapsedTime = currentTime - lastActionTime; if (elapsedTime > 70000) { // 70 seconds console.log("⏳ No action for 70 seconds, refreshing the page..."); location.reload(); // Refresh the page } } // Check for inactivity every 10 seconds setInterval(checkForInactivity, 10000); // Retry mechanism for internet connection function isOnline() { return navigator.onLine; // Check if the user is online } function retryIfOffline() { if (!isOnline()) { console.log('🌐 No internet connection, retrying in 5 seconds...'); setTimeout(retryIfOffline, RETRY_INTERVAL); } } // Start checking the internet connection retryIfOffline(); // Function to handle CAPTCHA and claim button function handleCaptchaAndClaim(nextSiteUrl) { updateLastActionTime(); // Update the action time // Wait 5 seconds after page load setTimeout(() => { // Check for CAPTCHA on different sites const captchaSelect = document.querySelector('#select_captcha'); if (captchaSelect) { captchaSelect.value = '0'; // Select IconCaptcha const event = new Event('change', { bubbles: true, cancelable: true }); captchaSelect.dispatchEvent(event); console.log('✅ Selected IconCaptcha'); } else { console.warn('⚠️ CAPTCHA select element not found on this page.'); } // Observe for "Verification complete." const observer = new MutationObserver((mutations, obs) => { const verificationMessage = document.querySelector('.iconcaptcha-modal__body-title'); if (verificationMessage && verificationMessage.textContent.includes('Verification complete')) { console.log('✅ IconCaptcha solved: Verification complete.'); // Wait 5 seconds, then click claim button setTimeout(() => { const claimBtn = document.querySelector('#process_claim_hourly_faucet'); if (claimBtn) { claimBtn.click(); console.log('🟢 Claim button clicked.'); // After clicking the claim button, move to the next site setTimeout(() => { window.location.href = nextSiteUrl; console.log(`🔄 Redirecting to next site: ${nextSiteUrl}`); }, 5000); // 5 seconds delay before moving to next site } else { console.warn('⚠️ Claim button not found.'); } }, 5000); // 5 seconds delay before clicking claim obs.disconnect(); // Stop observing after completion } }); // Start observing for changes observer.observe(document.body, { childList: true, subtree: true }); }, 5000); // 5 seconds delay after page load } // Function to check "Please wait until the clock stops" (for 1 minute) and redirect function checkWaitTextAndRedirect(nextSiteUrl) { updateLastActionTime(); // Update the action time // Check if the text is present in the body const checkForWaitText = () => { return document.body.innerText.includes("Please wait until the clock stops"); }; if (checkForWaitText()) { const startTime = Date.now(); const checkInterval = setInterval(() => { if (checkForWaitText()) { const elapsedTime = Date.now() - startTime; if (elapsedTime > 60000) { // 1 minute (60,000 milliseconds) console.log('⚠️ "Please wait until the clock stops" displayed for 1 minute, redirecting to next site...'); clearInterval(checkInterval); window.location.href = nextSiteUrl; } } }, 1000); // Check every 1 second } } // Modified logic to stop CAPTCHA verification when "Please wait until the clock stops" is shown function handleWaitMessageAndCaptcha(nextSiteUrl) { updateLastActionTime(); // Update the action time const waitText = "Please wait until the clock stops"; const checkForWaitText = document.body.innerText.includes(waitText); if (checkForWaitText) { console.log(`⚠️ "${waitText}" detected. Skipping CAPTCHA and verification...`); setTimeout(() => { console.log('⏳ Waiting for 1 minute...'); setTimeout(() => { console.log(`🔄 Redirecting to next site: ${nextSiteUrl}`); window.location.href = nextSiteUrl; }, 60000); // 1 minute wait before redirection }, 1000); // Ensure there's a small delay before waiting } else { // If the wait text is not detected, continue with CAPTCHA handling handleCaptchaAndClaim(nextSiteUrl); } } // Check if we're on any of the faucet sites and handle CAPTCHA if necessary if (window.location.href.includes('tronpick.io')) { handleWaitMessageAndCaptcha('https://litepick.io/faucet.php'); // After TronPick, go to LitePick } else if (window.location.href.includes('litepick.io')) { // Wait 10 seconds before proceeding on LitePick page setTimeout(() => { handleWaitMessageAndCaptcha('https://dogepick.io'); // After LitePick, go to DogePick }, 10000); // 10 seconds delay before starting the next actions } else if (window.location.href.includes('dogepick.io')) { handleWaitMessageAndCaptcha('https://bnbpick.io'); // After DogePick, go to BNBPick } else if (window.location.href.includes('bnbpick.io')) { handleWaitMessageAndCaptcha('https://solpick.io'); // After BNBPick, go to SolPick } else if (window.location.href.includes('solpick.io')) { handleWaitMessageAndCaptcha('https://tonpick.game'); // After SolPick, go to TonPick } else if (window.location.href.includes('tonpick.game')) { handleWaitMessageAndCaptcha('https://polpick.io'); // After TonPick, go to PolPick } else if (window.location.href.includes('polpick.io')) { handleWaitMessageAndCaptcha('https://suipick.io'); // After PolPick, go to SuiPick } else if (window.location.href.includes('suipick.io')) { handleWaitMessageAndCaptcha('https://www.google.com'); // After SuiPick, go to Google } // If we're on Google, start the redirection sequence (wait 5 seconds) if (window.location.href.includes('google.com')) { setTimeout(() => { console.log('🔄 Redirecting from Google to faucet...'); window.location.href = 'https://tronpick.io/faucet.php'; // Redirect to TronPick }, WAIT_TIME); // Wait 5 seconds before redirection } })();