Auto click Claim Button

自動點擊 "Claim" 按鈕,直到按鈕可點擊為止

当前为 2024-11-21 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name Auto click Claim Button
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.4
  5. // @description 自動點擊 "Claim" 按鈕,直到按鈕可點擊為止
  6. // @author Your Name
  7. // @match *://*/* // 這裡可以替換為特定的水龍頭網站 URL
  8. // @grant none
  9. // @license MIT
  10. // ==/UserScript==
  11.  
  12. (function() {
  13. 'use strict';
  14.  
  15. const smoothScrollToCenter = () => {
  16. const claimButton = document.querySelector('.claim-button');
  17. if (claimButton) {
  18. const rect = claimButton.getBoundingClientRect();
  19. const scrollTop = window.pageYOffset || document.documentElement.scrollTop;
  20. const scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;
  21. window.scrollTo({
  22. top: rect.top + scrollTop - (window.innerHeight / 2) + (rect.height / 2),
  23. left: rect.left + scrollLeft,
  24. behavior: 'smooth'
  25. });
  26. }
  27. };
  28.  
  29. const checkClaimButton = () => {
  30. const claimInterval = setInterval(() => {
  31. const captchaResponse = document.querySelector('[name="g-recaptcha-response"], [name="captcha_choosen"]');
  32. const claimButton = document.querySelector('.claim-button');
  33.  
  34. if (captchaResponse) {
  35. smoothScrollToCenter(); // 滾動到中心
  36. }
  37. if (claimButton && captchaResponse && captchaResponse.value.length > 0 && !claimButton.disabled) {
  38. claimButton.click();
  39. console.log('已點擊 Claim 按鈕!');
  40. clearInterval(claimInterval);
  41. } else {
  42. console.log('找不到可點擊的 Claim 按鈕或 CAPTCHA 尚未通過。');
  43. }
  44. }, 1000); // 每秒檢查一次
  45. };
  46.  
  47. // 啟動檢查
  48. checkClaimButton();
  49. })();