您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
try to take over the world!
当前为
// ==UserScript== // @name 云题库刷题 // @namespace http://tampermonkey.net/ // @version 2.1 // @description try to take over the world! // @author 吃瓜男孩 // @match http://tiku.kgc.cn/testing/exam/* // @match http://tiku.kgc.cn/testing/unified/* // @match http://tiku.kgc.cn/testing/paper/* // @grant GM_setValue // @grant GM_getValue // @grant GM_xmlhttpRequest //@require https://cdn.bootcss.com/spark-md5/3.0.0/spark-md5.min.js //@connect * // ==/UserScript== var currentURL = window.location.href; (function() { 'use strict'; jQuery.support.cors = true; var answerURL= /tiku\.kgc\.cn\/testing\/exam*/; var testURL= /tiku\.kgc\.cn\/testing\/unified*/; var sumbitURL= /tiku\.kgc\.cn\/testing\/paper\/report*/; if(answerURL.test(currentURL)||testURL.test(currentURL)){ $(document).ready(function(){ var questHTML = $(".sec2>pre>img"); var reg = /\d{10,15}/; window.quests=new Array(); $(questHTML).bind("load",function(){ var ele=this; var returnValue=function(e){ window.quests[window.quests.length]=e; $(ele).attr('data',e); console.log(window.quests.length+","+questHTML.length+","+e); if(window.quests.length==questHTML.length){ addAnswerButton(addHTML); } }; returnImgMd5(this.src,returnValue); }) setTimeout( function(){ for(var e=0;e<questHTML.length;e++){ if($(questHTML[e]).attr("data")==null){ console.log("节点"+e); //alert("加载"); var ele=$(questHTML[e]); var returnValue=function(e){ window.quests[window.quests.length]=e; $(ele).attr('data',e); console.log(window.quests.length+","+questHTML.length+","+e); if(window.quests.length==questHTML.length){ addAnswerButton(addHTML); } }; returnImgMd5($(ele).attr("src"),returnValue); } } },3000 ); var addHTML = $('<a id="getAnswer" href="javascript:void(0);" class="f14 rest acenter"></a>').text("获取答案").click(function(){ console.log(window.quests); if(window.quests!=null&&window.quests.length>0){ GM_xmlhttpRequest({ method: "post", url: 'http://tiku.yxmnb.top/answer/get', data: JSON.stringify(quests), headers: { "Content-Type": 'application/json;charset=utf-8' }, onload: function(r) { if(r.status==200){ var answerResult = []; answerResult = JSON.parse(r.responseText); if(answerResult.length>0){ for(var a=0;a<questHTML.length;a++){ var questMd5 = $(questHTML[a]).attr("data"); for(var w=0;w<answerResult.length;w++){ var answer=answerResult[w].answer; if(questMd5==answerResult[w].imageMd5&&answer!=null){ var value=answer.split(','); var options = $(questHTML[a]).parents(".sec").find(".sec2>li"); if(value.length==1){ options[value[0]].click(); }else{ for(var q=0;q<value.length;q++){ options[value[q]].click(); } } } } } }else{ alert("题库里面一道题也没有,快答题扩充题库吧"); } } } }); } }); }); } })(); function addAnswerButton(addHTML){ $("#putIn").after(addHTML).bind("click",function(){this.hide()}); } function returnImgMd5(url,callback){ GM_xmlhttpRequest({ method: 'GET', responseType:"blob", url: url, onload: response => { console.log("状态码"+response.status); if (response.status == 200) { var reader = new FileReader(); reader.onload = function(e){ var spark = new SparkMD5.ArrayBuffer(); spark.append(e.target.result); callback(spark.end()); } reader.onerror=function(e){ console.log("解析异常"+e); } console.log(reader.readyState); reader.readAsArrayBuffer(response.response); } }, onerror:function(e){ console.log("请求失败"+e); } }); }