/* * @Author: tian.gao * @Date: 2020-08-14 11:03:26 * @LastEditors: tian.gao * @LastEditTime: 2020-08-16 09:31:42 * @Description: */ // ==UserScript== // @name 机动战士敢达ol 活动领取器 // @namespace http://tampermonkey.net/ // @version 0.21 // @description try to take over the world! // @author You // @match *://*event.9you.com/* // @grant GM_xmlhttpRequest // @grant GM_download // @downloadURL none // ==/UserScript== (function() { // 活动信息 var posJosn=[] const pages=`
` $(".main").append(pages) var style = document.createElement("style"); style.type = "text/css"; var text = document.createTextNode(` .mys-page{ width: 200px; height: 500px; position: fixed; right: 10px; top: 200px; background-color: rgba(255,255,255,0.7); overflow: auto; z-index:9999 } .lin{ width: 200px; height: 30px; background-color: #a6dfa8; } .sid{ overflow: auto; height: 470px; }`); /* 这里编写css代码 */ style.appendChild(text); var head = document.getElementsByTagName("head")[0]; head.appendChild(style); // 从码云上获取活动信息 /* GM_xmlhttpRequest({ method: "GET", url: "http://gaotianvb.gitee.io/mobile_soldier_ol__json/py.json", onload: function(response) { let a=response.response posJosn=JSON.parse(a) } }); */ //$.ajaxSettings.async = false; //关闭异步 // 请求池 let postlist=[] // 请求池中添加请求 function post(a1,a2) { postlist.push([a1,a2]) } /* // 从请求池获取请求参数并请求 setInterval(() => { if(postlist.length){ let quer=postlist.shift() $.ajax({ type: "post", url: quer[0], data: quer[1], success: function (result) { let res=JSON.parse(result) if(res.status=='00'){ $('.sid').prepend('

'+res.desc+'

') }else{ $('.sid').prepend('

'+res.desc+'

') } }, error:function(response){ response=JSON.parse(response.responseText) if(response.status=='00'){ $('.sid').prepend('

'+response.desc+'

') }else{ $('.sid').prepend('

'+response.desc+'

') } } }); } //请求间隔,防止过快请求导致被网站屏蔽 }, 300); */ // 从请求池获取请求参数并请求 setInterval(() => { if(postlist.length){ let quer=postlist.shift() $.ajax({ type: "post", url: quer[0]+'/'+quer[1], data: eval('('+quer[2]+')'), success: function (result) { let res=JSON.parse(result) if(res.status=='00'){ $('.sid').prepend('

'+res.desc+'

') }else{ $('.sid').prepend('

'+res.desc+'

') } }, error:function(response){ response=JSON.parse(response.responseText) if(response.status=='00'){ $('.sid').prepend('

'+response.desc+'

') }else{ $('.sid').prepend('

'+response.desc+'

') } } }); } //请求间隔,防止过快请求导致被网站屏蔽 }, 300); $('.lin').click(function () { // 遍历活动信息,解析成请求参数 // ["http://wg-event.9you.com/msact_202017946/do10", {"itemkey": "1"},[1, 5]] // 活动信息一般像上面的样子,第一个是请求url,第二个是请求参数,第三个是参数的范围 // 例如"http://wg-event.9you.com/msact_202017946/do10", {"itemkey": "1"} // "http://wg-event.9you.com/msact_202017946/do10", {"itemkey": "2"} // "http://wg-event.9you.com/msact_202017946/do10", {"itemkey": "3"} // 像这样一个url 不同的itemkey对应同个活动的不同按钮 [1,5]表示1-5 /* for (let i = 0; i < posJosn.length; i++) { const element = posJosn[i]; if(element[2]){ let key=Object.keys(element[1]) for (let x = element[2][0]; x <= element[2][1]; x++) { let q={} if(element[3]){ for (let y = element[3][0]; y <= element[3][1]; y++) { q[key[0]]=x q[key[1]]=y // sleep(1000) post(element[0],q) } }else{ q[key[0]]=x // sleep(1000) post(element[0],q) } } }else{ // sleep(1000) post(element[0],element[1]) // $.post(element[0],element[1]) } } */ // $.post("http://wg-event.9you.com/msact_202017912/do10",{itemkey: '1,3,4,5,8'}) // 所有活动网址 let activity=[] let activityBase=$('.left_list a') for(let i=0;i