// ==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;
}
}
});