您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
try to take over the world!
/* * @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.23 // @description try to take over the world! // @author You // @match *://*.9you.com/* // @grant GM_xmlhttpRequest // @grant GM_download // ==/UserScript== (function() { // 活动信息 var posJosn=[] const pages=`<div class="mys-page"> <button class="lin" > 一键领取 </button> <div class="sid"> </div> </div>` $(".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('<p style="color:red">'+res.desc+'</p>') }else{ $('.sid').prepend('<p >'+res.desc+'</p>') } }, error:function(response){ response=JSON.parse(response.responseText) if(response.status=='00'){ $('.sid').prepend('<p style="color:red">'+response.desc+'</p>') }else{ $('.sid').prepend('<p >'+response.desc+'</p>') } } }); } //请求间隔,防止过快请求导致被网站屏蔽 }, 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('<p style="color:red">'+res.desc+'</p>') }else{ $('.sid').prepend('<p >'+res.desc+'</p>') } }, error:function(response){ response=JSON.parse(response.responseText) if(response.status=='00'){ $('.sid').prepend('<p style="color:red">'+response.desc+'</p>') }else{ $('.sid').prepend('<p >'+response.desc+'</p>') } } }); } //请求间隔,防止过快请求导致被网站屏蔽 }, 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<activityBase.length;i++){ activity.push(activityBase[i].href) } activity.push('http://'+window.location.host+'/msact_202018166/part1') //把不需要的活动地址放到这 let notNeed=['http://wg-event.9you.com/msact_202018322','http://wg-event.9you.com/msact_202018302','http://wg-event.9you.com/msact_201914932','http://wg-event.9you.com/msact_201914101/member','http://wg-event.9you.com/msact_202018278','http://wg-event.9you.com/msact_202018212','http://wg-event.9you.com/msact_202018020'] //console.log(activity).match(/postRequest\(.*?\)/) //activity=['http://wg-event.9you.com/msact_202018322'] for(let i=0;i<activity.length;i++){ if(notNeed.includes(activity[i])){continue} $.get(activity[i],function(data,status,xhr){ let s=data.match(/postRequest\(.*?\)/g) let u=data.match(/LogoutUrl.*?,/g) u=u[0].substring(u[0].length-17,u[0].length-2) for(let i=0;i<s.length;i++){ let q=s[i].match(/\(.*?\)/g) q[0]=q[0].replace(/\'\,/g,"'|") q[0]=q[0].replace(/\,\'/g,"|'") let b=q[0].substring(1,q[0].length-1).replace(/\'/g,"") //console.log(b.split(",")) let c=b.split("|") c.unshift('http://'+window.location.host+'/'+u) postlist.push(c) console.log(postlist) } }) } }) // Your code here... })();