// ==UserScript== // @name 贴吧自动签到&一键签到&慢速自动签到 // @version 0.6 // @description ’一键签到‘支持的贴吧数量有限,除非开会员,因为是直接用贴吧电脑端的api,和电脑端贴吧主页那里点击一键签到一个效果(每日北京时间0:00至1:00无法使用)。慢速自动签到目前还没什么用。 // @author shitianshiwa // @include http*://tieba.baidu.com/p/* // @include http*://tieba.baidu.com/f?* // @include http*://tieba.baidu.com/f/good?kw=* // @grant GM_registerMenuCommand // @run-at document-idle // @license MIT // @namespace https://greasyfork.org/users/466700 // @downloadURL https://update.greasyfork.icu/scripts/402074/%E8%B4%B4%E5%90%A7%E8%87%AA%E5%8A%A8%E7%AD%BE%E5%88%B0%E4%B8%80%E9%94%AE%E7%AD%BE%E5%88%B0%E6%85%A2%E9%80%9F%E8%87%AA%E5%8A%A8%E7%AD%BE%E5%88%B0.user.js // @updateURL https://update.greasyfork.icu/scripts/402074/%E8%B4%B4%E5%90%A7%E8%87%AA%E5%8A%A8%E7%AD%BE%E5%88%B0%E4%B8%80%E9%94%AE%E7%AD%BE%E5%88%B0%E6%85%A2%E9%80%9F%E8%87%AA%E5%8A%A8%E7%AD%BE%E5%88%B0.meta.js // ==/UserScript== //慢速自动签到目前还没什么用 (function() { var $ = unsafeWindow.jQuery; // @grant 不能为none,否则不能用 var PageData = unsafeWindow.PageData; 'use strict'; const IE = "utf-8"; const css1 = ` /*固定到网页右边*/ .miaoqiandaocss1 { width:140px; height:120px; position: fixed; left:30px; bottom:420px; z-index: 1005; color:#f00; font-size:10px; font-weight:bold; } `; const style = document.createElement('style'); //创建新样式节点 style.textContent = css1; //添加样式内容 document.head.appendChild(style); //给head头添加新样式节点 var t; //捕捉class用.,id对象用#?,$=document.getElementById? //alert("233"); //自动签到 //localStorage.removeItem("miaoerror");//报错后使用,使用完要再注释掉,用来防止频繁发生命令的标识,清空浏览器数据也可以 var t1; var errorx = ""; function resetx() { try { localStorage.removeItem("miaoerror"); alert("已经恢复自动签到"); } catch (error) { alert(error); } } try { errorx = localStorage.getItem("miaoerror"); //alert(errorx); if ($("a.j_signbtn")[0] == null || $('#j_head_focus_btn')[0] == null) { return; } if ($("a.j_signbtn")[0].title == "签到" && $('#j_head_focus_btn')[0].className == "focus_btn cancel_focus" && $('span.userlike_prisoned')[0] == undefined) //未签到和已经关注该吧及未被封禁才能条件通过 { t = setTimeout(qiandao, 1000); //延迟1s签到 //qiandao(); //alert($(".j_signbtn")[0].title); } else { //alert("233"); } } catch (error) { alert(error); } function qiandao() //自动签到对超级会员,会员,年费会员似乎一次不能成功,超会签到class="sign_box_member_bright,又可以一次签到成功了?"除了网络问题导致的签到失败外,就只有签到后外观不是会员样式的问题了。 { clearTimeout(t); var url = "/sign/add"; try { if ($("a.j_signbtn")[0] == null) { return; } var TBS = PageData.tbs || PageData.user.tbs; var KW = PageData.forum.name || PageData.forum.forum_name; var c = { 'tbs': TBS, 'kw': KW, 'ie': "utf-8" }; //加个''2019-8-24,个别情况下只有PageData.forum.forum_name可以得到贴吧名 if ($("a.j_signbtn")[0].className == "j_signbtn sign_btn_bright j_cansign" && errorx == null && TBS != null && KW != null) //第二次判断是否未签到。。!及未被记录过出错误 { $.post(url, c, function(o) { if (o.no != 0) { let s = "no:" + o.no + ",nerr_code:" + o.err_code + ",nerror:" + o.error; alert(s + ",出现错误请关闭插件!频繁发送命令可能很危险,贴吧正常情况下不会有连续签到的命令出现"); //频繁发送命令可能很危险,贴吧正常情况下不会有连续签到的命令出现 localStorage.setItem("miaoerror", s); } else { //alert(PageData.forum.name+"吧签到成功,"+o.data.sign_version); $("#signstar_wrapper")[0].className = "j_sign_box sign_box_bright sign_box_bright_signed"; //改签到为已签到 j_sign_box sign_box_bright sign_box_member_bright sign_box_member_bright_signed sign_box_bright_signed $("a.j_signbtn")[0].setAttribute('id', 'j_signbtn'); //添加节点需要id,所以先捕捉class,再添加id $("a.j_signbtn")[0].title = "签到完成" $("a.j_signbtn")[0].classList.add("signstar_signed"); //signstar_signed来自 https://github.com/shitianshiwa/baidu-tieba-userscript/tree/master/%E8%B4%B4%E5%90%A7%E5%85%A8%E8%83%BD%E5%8A%A9%E6%89%8B 贴吧全能脚本的已签到样式。需要有安装这个脚本才会有效果 let a1 = document.getElementById("j_signbtn"); //捕捉id let a2 = document.createElement("span"); //创建节点 let day1 = o.data.uinfo.cont_sign_num; //获取连续签到天数 a2.setAttribute('class', 'sign_keep_span'); //为span添加属性 a2.innerHTML = "连续" + day1 + "天"; //已连续签到天数 连续天数 //alert(o.data.uinfo.cont_sign_num); a1.appendChild(a2); //添加节点显示天数 let c3 = { 'kw': PageData.forum.name, 'ie': "utf-8" }; $.post("/sign/loadmonth", c3, function(o) { if (o.no != 0) { let s = "no:" + o.no + ",nerr_code:" + o.err_code + ",nerror:" + o.error; alert(s + ",出现错误请关闭插件!频繁发送命令可能很危险"); //频繁发送命令可能很危险 localStorage.setItem("miaoerror", s); } else { $("span.j_sign_month_lack_days")[0].innerHTML = o.data.resign_info.mon_miss_sign_num; //修改漏签天数标签 //alert(o.data.resign_info.mon_miss_sign_num); } }, "json"); //window.location.reload();//刷新网页显示已签到,为了节省流量注释掉了 } }, "json"); } else { alert("得到的参数不完整或未恢复自动签到,tbs=" + TBS + ",kw=" + KW); } } catch (error) { alert(error); } } function HH() //一键签到,一键签到有时间段限制,每日0:00至1:00无法使用 { try { if (localStorage.getItem("miaoerror") != null) { alert("已经启动慢速自动签到或者出现其它错误了!点‘报错后重启’"); return; } let s = "/tbmall/onekeySignin1"; let c = { 'tbs': PageData.tbs || PageData.user.tbs, 'ie': IE }; postpost(s, c); } catch (error) { alert(error); } } var tt1, tt2, failtemp = ""; function HH2() //慢速自动签到(目前电脑端贴吧有单位时间内签到贴吧数量上限限制) { try { if (localStorage.getItem("miaoerror") != null) { alert("已经启动慢速自动签到或者出错了!点‘报错后重启’"); return; } //$("div.miaoqiandaocss1").remove(); localStorage.setItem("miaoerror", "suo"); alert("开始自动签到贴吧!刷新可中断"); var c = { 'tn': "bdFBW", 'tab': "favorite" }; var u = "/mo/q-----1-1-0----/m"; $.get(u, c, function(data) { sessionStorage.setItem("HH2temp", $(data.body)[0].innerText.split(".")); }, "xml"); var temp2 = new Array(), ii = 0, time = 0; function xianshi() { clearTimeout(tt1); var temp = sessionStorage.getItem("HH2temp").split(","); for (var i = 1; i < temp.length; i++) { temp2[ii] = temp[i].split("等级")[0]; //console.log(temp[i].split("等级")[0]); ii++; } $.post("/dc/common/tbs", "", function(o) { sessionStorage.setItem("miaousertbs", o.tbs); }, "json"); //获取用户tbs口令号并储存在sessionStorage中,待使用 $("body").append('