1.购买服务器阿里云:服务器购买地址https://t.aliyun.com/U/DT4XYh若失效,可用地址
阿里云:
服务器购买地址
https://t.aliyun.com/U/DT4XYh若失效,可用地址
https://www.aliyun.com/activity/wuying/dj?source=5176.29345612&userCode=49hts92d腾讯云:
https://curl.qcloud.com/wJpWmSfU若失效,可用地址
https://cloud.tencent.com/act/cps/redirect?redirect=2446&cps_key=ad201ee2ef3b771157f72ee5464b1fea&from=console华为云
https://activity.huaweicloud.com/cps.html?fromacct=64b5cf7cc11b4840bb4ed2ea0b2f4468&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=2019052.部署教程
3.代码如下
(function () {'use strict';let oldadd = EventTarget.prototype.addEventListenerEventTarget.prototype.addEventListener = function (...args) {if (window.onblur !== null) {window.onblur = null;}if (args.length !== 0 && args[0] === 'visibilitychange') {console.log('劫持visibilitychange成功,奥利给!')return;}return oldadd.call(this, ...args)}if (location.href.indexOf("assess_list") != -1) {setTimeout(function () {pinggu()}, 1000)}async function pinggu() {let questionNums = document.querySelectorAll("dl").lengthfor (let i = 0; i < questionNums; i++) {let question = document.querySelectorAll("dl")[i]question.querySelectorAll("label")[0].click()await delay(500);}}function delay(ms) {return new Promise(resolve => setTimeout(resolve, ms));}})();
解析
该脚在 国家药品安全专业技术人员培训网(nmpaied.com)页面运行的脚本,作用包括:
评估页自动选 A 选项(逐题点击第一项);
干扰/绕过切屏限制(避免因切换窗口被系统判定并限制考试)。
主要方法的作用
劫持事件监听
重写EventTarget.prototype.addEventListener:发现页面尝试监听
visibilitychange(可用于切屏检测)时,直接拦截不注册;同时将
window.onblur置空,减少页面对失焦/切屏的感知。
作用:降低页面基于可见性变化或失焦事件的切屏次数统计/限制效果。入口路由判断与延时启动
当 URL 含assess_list时,setTimeout延迟 1 秒后触发评估流程pinggu()。评估自动选 A(
pinggu)
遍历页面上每道题(document.querySelectorAll("dl")),对每题的 第一个label执行click()(默认视为 A 选项),每题之间await delay(500)做半秒延时,避免过快操作。通用延时工具(
delay)
以Promise包装setTimeout,用于异步流程中的节奏控制。
注意:
本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。技术层面需要提供帮助,可以通过打赏的方式进行探讨。
没有评论:
发表评论