// ==UserScript== // @name 妖火吃肉 // @namespace https://www.bmt.pub/ // @version 1.0 // @description 妖火网肉贴打开后自动回复吃肉,当天不重复吃,余数为0不吃,隔天后又可以重复吃一次。懒得回帖之人必备,又可以吃肉 // @author 院长 // @require https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js // @require https://cdn.bootcss.com/sweetalert/2.1.2/sweetalert.min.js // @require https://code.jquery.com/jquery-latest.js // @match http://yaohuo.me/* // @match https://yaohuo.me/* // @include https://yaohw.com/* // @include http://yaohw.com/* // @run-at document-start // @grant GM_getValue // @grant GM.getValue // @grant GM_setValue // @grant GM.setValue // @grant GM_addStyle // @grant GM_xmlhttpRequest // @grant GM_getResourceText // @grant GM_registerMenuCommand // @downloadURL none // ==/UserScript== //当前时间 var nowdate= function() { //获取当前时间 var date = new Date(); var year = date.getFullYear(); var month = date.getMonth() + 1; var day = date.getDate(); if (month < 10) { month = "0" + month; } if (day < 10) { day = "0" + day; } var nowDate = year + "-" + month + "-" + day; return nowDate; } //正文 $(document).ready(function(){ //楼主ID var userid; //一个帖子内吃肉次数 var count=0; //当天时间信息 var time; //吃肉时回复内容 var context=new Array("吃","吃肉","吃了","再吃","感谢肉肉~","感谢","吃完再说","真香","我是来吃肉的","ok,吃完"); //得到楼主ID方法 var f1=function(){ //获取楼主空间地址操作,得到ID var request = $.ajax({ //请求方式 type:'GET', async: false, //发送请求的地址以及传输的数据 url:"https://yaohuo.me", success:function(data){ //请求成功函数内容 //匹配首页空间a标签 //匹配a标签 var aReg=/]*href=['"]([^"]*)['"][^>]*>([\u7A7A\u95F4]{2})<\/a>/g; //获取楼主ID var arrA = data.match(aReg); var indexof1=arrA[0].indexOf('id='); var indexof2=arrA[0].indexOf('\">空间'); //获取到id userid =arrA[0].substring(indexof1+3,indexof2); }, error:function(jqXHR){ //请求失败函数内容 } }); //终止请求动作. request.abort(); return userid; } //统计楼主存在的吃肉回复次数方法 var f2=function(){ f1(); //匹配所有妖火成员回复的url和参数 var action=$("input[name='action']").val(); var siteid=$("input[name='siteid']").val(); var lpage=$("input[name='lpage']").val(); var sid=$("input[name='sid']").val(); var classid=$("input[name='classid']").val(); var id=$("input[name='id']").val(); //因没有getTotal参数,所以另需寻找 var getTotalElement=document.getElementsByClassName('more')[0].firstElementChild.href; var getTotalElementindexof1=getTotalElement.indexOf('getTotal='); var getTotalElementindexof2=getTotalElement.indexOf('&id='); var getTotal =getTotalElement.substring(getTotalElementindexof1+9,getTotalElementindexof2); for(var i=1;i<=getTotal/15+1;i++){ var hrefUrl='https://yaohuo.me/bbs/book_re.aspx?action='+ action +'&siteid='+siteid+'&classid='+classid+'&id='+id+'&lpage='+lpage+'&getTotal='+getTotal+'&ot=&mainuserid=&page='+i; var request1= $.ajax({ //请求方式 type:'GET', //发送请求的地址以及传输的数据 url:hrefUrl, async:false, success: function(data){ //匹配所有用户回复链接,如 var aReg=/]*href=['"]([^"]*)['"][^>]*>([\u56DE])<\/a>/g; var tempArr= data.match(aReg); for(var k=0;k回'); //获取到id var tempid =tempArr[k].substring(touserIdIndexOf1+9,touserIdIndexOf2); if(userid==tempid){ count++; console.log("您回复帖子次数:"+count); } } }, error:function(jqXHR){ //请求失败函数内容 console.log('错误原因:'+jqXHR); }, failure:function (result) { console.log('失败原因:'+result); }, }); //终止请求动作. request1.abort(); } return count; } //回复贴子方法 var f3=function(){ console.log("发言次数:"+count); if(count<=0){ //执行发言 $("textarea[name='content']").val(context[Math.floor(Math.random()*(11 - 1) + 1)]); $("input[name='g']").click(); //存储时间文本和吃肉信息 localStorage.setItem("当前妖火网时间:",nowdate()); return; } } //判断肉是否吃完,以及调用f3()吃肉方法 var f4= function(){ //匹配肉是否吃完,查看"余0"和“礼金” var lijinReg=/\u793C\u91D1/g;//礼金 var remainderReg=/\(\u4F59[0]\)/g;//(余0) var data=$(".dashed").parent()[0].innerText; var lijin= data.match(lijinReg); var remainder= data.match(remainderReg); if(data==undefined){ return; } //匹配是否为肉贴 if(lijin!=null) if(lijin[0]=='礼金') //若肉的余数为零则不吃不回复 if(remainder==null){ f3(); } else if(remainder[0]=='(余0)'){ return; }else{ return; } } //比较当天时间信息 time=localStorage.getItem('当前妖火网时间:'); //比较当天时间信息,if存在当天时间信息就比较时间 if(time!=null) { //比较今天和之前时间 if(time==nowdate()){ //未吃过肉 count=f2(); if(count==0){ f4(); } //吃过肉了 else{ return; } } //比较时间不等时,即新一天 else{ //更新吃肉记录为未吃状态 count=0; f4(); } } //不存在时间记录时,创建记录 else{ localStorage.setItem("当前妖火网时间:",nowdate()); count=f2(); //未吃过肉 if(count==0){ f1(); f4(); } //吃过肉了 else{ return; } } });