能不能参考52pojie的自动签到脚本,改改
// ==UserScript==
// @icon https://www.52pojie.cn/favicon.ico
// @name 52pojie吾爱破解论坛自动签到助手_免打扰_2022
// @namespace https://zfdev.com/
// @version 0.6
// @description 打开论坛自动签到, 无其他提示
// @author ZFDev
// @match *://www.52pojie.cn/*
// @exclude *://www.52pojie.cn/home.php?mod=task*
// @run-at document-idle
// @grant none
// ==/UserScript==
(function() {
'use strict';
function saveDate(){
localStorage.setItem('autoSign',new Date().toDateString());
}
function isTody(){
var lastSignDate = localStorage.getItem('autoSign');
if(lastSignDate){
return new Date(lastSignDate).toDateString() === new Date().toDateString();
}else{
return false;
}
}
function bSign(){
return new Promise(function (resolve, reject) {
var f = document.createElement('iframe')
// f.style="width:1000px;height:500px;display: none;outline: none;"
f.src = "/home.php?mod=task&do=apply&id=2&referer=%2Fforum.php"
f.style="width:1000px;height:500px;"
f.onload = function(e){
var u = e.target.contentWindow.location.search
var c = f.contentWindow.document.body.textContent
if (u.indexOf(s.p)>=0) {
if (c.indexOf(s.n) > 0){
} else {
f.remove()
resolve(c)
}
}
}
document.body.append(f)
})
}
let s = {
a: "正在自动签到...",
b: "本期您已申请过此任务",
c: "您已经签到了!",
d: "任务已完成",
f: "签到成功!",
g: "签到失败!",
h: '<img src="https://static.52pojie.cn/static/image/common/wbs.png" class="qq_bind" align="absmiddle" alt="">',
i: "自动签到中..",
j: '#hd .wp #um p > a > img[src*="qds.png"]',
k: 'home.php?mod=task&do=apply&id=2',
l: 'home.php?mod=task&do=draw&id=2',
m: '403 Forbidden',
n: '请开启JavaScript并刷新该页',
o: 0,
p: '?mod=task&do=draw',
q: '?mod=task&do=apply',
}
function autoSign(num) {
if (!isTody()){
let a = document.querySelector(s.j);
if(s.o || a){
s.o = 1
a = a.parentNode;
a.text = s.i;
try{
var x = new Ajax();
}catch(e){
if(!num || num < 2){
setTimeout(function(){
autoSign(num+1);
},2000);
}
return;
}
console.log(s.a);
bSign().then(function (res) {
if(res.indexOf(s.b)>0){
console.log(s.c);
saveDate();
a.outerHTML = s.h;
}else if(res.indexOf(s.d)>0){
console.log(s.f);
saveDate();
a.outerHTML = s.h;
}else if(res.indexOf(s.m)>0 || res.indexOf(s.n)>0){
autoSign(0);
}else{
console.log(s.g);
}
})
}
}
}
autoSign(0);
})();
|