您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
西南交通大学(swjtu)教务网验证码识别
当前为
// ==UserScript== // @name 通途 // @namespace http://tampermonkey.net/ // @version 1.01 // @description 西南交通大学(swjtu)教务网验证码识别 // @author kaka // @match http://jwc.swjtu.edu.cn/service/login.html // @connect aip.baidubce.com // @connect localhost // @grant unsafewindow // @grant GM_xmlhttpRequest // @grant GM_getValue // @grant GM_setValue // @run-at document-idle // ==/UserScript== (function() { 'use strict'; function get_random_img(callback){ let httpRequest = new XMLHttpRequest();//第一步:建立所需的对象 请求图片 httpRequest.open('GET','http://jwc.swjtu.edu.cn/vatuu/GetRandomNumberToJPEG?test='+new Date().getTime(), true);//第二步:打开连接 将请求参数写在url中 ps:"./Ptest.php?name=test&nameone=testone" httpRequest.responseType = 'blob'; httpRequest.send();//第三步:发送请求 将请求参数写在URL中 /** * 获取图片后进行base64编码 */ httpRequest.onreadystatechange = function () { if (httpRequest.readyState == 4 && httpRequest.status == 200) { let img = httpRequest.response; var reader = new FileReader(); reader.readAsDataURL(img); reader.onload = function (e) { let ran_img = document.querySelector("#randomPhoto > img"); //换图片 ran_img.src = e.target.result; // console.log("!!!!!!!!!!!!!") // console.log(ran_img.src); let bs64_str_temp = e.target.result; let bs64_str = bs64_str_temp.split(",")[1]; callback(bs64_str); } }; }; } function get_str(access_token,bs64_str){ let request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage"; request_url = request_url + "?access_token=" + access_token; let data = 'image='+encodeURIComponent(bs64_str); //alert(encodeURIComponent(bs64_str)); GM_xmlhttpRequest({ method: 'POST', url: request_url, data: data, headers: { 'charset': 'UTF-8', "Content-Type": "text/plain" }, onload: function(response) { // console.log("baidu_response"); // console.log(response.responseText) try{ let temp = JSON.parse(response.responseText); let rand_str = temp['words_result'][0]['words']; if(rand_str.length == 4){ document.getElementById('ranstring').value = rand_str; //填写验证码 } else{ //重来 throw "解析失败"; } } catch(err){ console.log(err); if(err_num<=3){ err_num+=1; console.log(err_num) document.querySelector("#ranstring").placeholder = '失败,重试中...'; get_random_img(function( bs64_str){ let random_str = parse_img(bs64_str); }); }else{ document.querySelector("#ranstring").placeholder = '失败,请自行输入'; debugger; } } } }) } function parse_img(bs64_str){ GM_xmlhttpRequest({ method: "GET", url: 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=iKGARn6BhGgU82W9xzLUIatb&client_secret=hES0Zae2iLdP1iotenC8zlGo9qA3r0Hc', onload: function(response) { let access_token =JSON.parse(this.responseText)["access_token"]; get_str(access_token,bs64_str); } }) } //let bs64_str ; let err_num = 1; document.querySelector("#ranstring").placeholder = '尝试获取验证码中'; get_random_img(function( bs64_str){ parse_img(bs64_str) }) })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址