// ==UserScript== // @name 吾爱破解自动打卡签到 // @namespace https://www.52pojie.cn/ // @version 1.4 // @description 进入吾爱破解自动点击"打卡签到"按钮(点击后直接跳转签到) // @match https://www.52pojie.cn/* // @run-at document-idle // @grant none // ==/UserScript== (function () { 'use strict'; // 一天只签一次(防刷新重复) const today = new Date().toLocaleDateString('zh-CN'); if (localStorage.getItem('pojie_signed') === today) { console.log('[52pojie签到] 今日已签过,跳过'); return; } // 未登录则跳过 if (!document.querySelector('a[href*="action=logout"]')) { console.log('[52pojie签到] 未登录,跳过'); return; } const sleep = (ms) => new Promise(r => setTimeout(r, ms)); (async () => { await sleep(1000 + Math.random() * 2000); // 定位签到按钮:优先按任务链接,其次按 qq_bind 图片 const btn = document.querySelector('a[href*="mod=task&do=apply&id=2"]') || document.querySelector('a[href*="do=apply"][href*="id=2"]') || document.querySelector('img[src*="qq_bind"]')?.closest('a'); if (!btn) { console.log('[52pojie签到] 未找到签到按钮(可能已签到或未登录)'); return; } // 按钮已变成"已签到"则跳过 if (/已签到/.test(btn.innerText || '')) { console.log('[52pojie签到] 按钮显示已签到'); localStorage.setItem('pojie_signed', today); return; } console.log('[52pojie签到] 找到签到按钮:', btn.href || btn); localStorage.setItem('pojie_signed', today); btn.click(); // 跳转回来后确认结果 window.addEventListener('load', () => { setTimeout(() => { const text = document.body.innerText; if (/已签到|申请成功|任务完成/.test(text)) { console.log('[52pojie签到] ✅ 签到成功'); } else if (/先登录|登录后/.test(text)) { console.log('[52pojie签到] ❌ 登录失效,已重置标记'); localStorage.removeItem('pojie_signed'); } }, 1000); }, { once: true }); })(); })();