您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
用于一维大成湘才培训网自动答题插件
// ==UserScript== // @name 一维大成湘才培训网自动答题助手 - 四则运算(延迟执行 + 容错版) // @namespace http://tampermonkey.net/ // @version 1.1 // @description 用于一维大成湘才培训网自动答题插件 // @author yqls // @match *://hunan.bjewaytech.com/* // @grant none // ==/UserScript== (function() { 'use strict'; console.log("【自动答题脚本】已加载"); // 设置延迟时间为 8000 毫秒(8 秒) const delayTime = 8000; // 延迟启动自动答题逻辑 setTimeout(() => { console.log("【调试】延迟 8 秒后启动自动答题逻辑"); monitorAnswerDialog(); }, delayTime); // 持续监测答题框是否出现(含初始化检测) function monitorAnswerDialog() { // 初始化检测:弹窗是否已存在 const existingDialog = document.querySelector('.el-dialog__wrapper .el-dialog[aria-label="回答问题卡"]'); if (existingDialog && isVisible(existingDialog)) { console.log("【调试】初始化检测到答题弹窗"); autoSolveMath(existingDialog); return; } // 持续监听 DOM 变化 const observer = new MutationObserver((mutations) => { const dialog = document.querySelector('.el-dialog__wrapper .el-dialog[aria-label="回答问题卡"]'); if (dialog && isVisible(dialog)) { console.log("【调试】MutationObserver 检测到答题弹窗"); autoSolveMath(dialog); } }); observer.observe(document.body, { childList: true, subtree: true }); console.log("【调试】MutationObserver 已启动"); } // 判断元素是否可见 function isVisible(element) { return window.getComputedStyle(element).display !== 'none'; } // 获取题目文本(增强兼容性) function getQuestionText(dialog) { const rawQuestion = dialog.querySelector('h3 p p')?.innerText || dialog.querySelector('.answer_list_head h3')?.innerText || dialog.querySelector('.answer_list_head')?.innerText || ''; return rawQuestion.trim(); } // 提取数学表达式 function extractMathExpression(questionText) { const cleanedExpr = questionText.replace(/[^\d+\-*/÷×().]/g, ''); const exprMatch = cleanedExpr.match(/([0-9+\-*/÷×().]+)/); return exprMatch ? exprMatch[1].trim().replace(/×/g, '*').replace(/÷/g, '/') : null; } // 自动解题函数 function autoSolveMath(dialog) { console.log("【调试】进入 autoSolveMath 函数"); // 提取题目文本 const rawQuestion = getQuestionText(dialog); console.log("【调试】原始题目文本:", rawQuestion); if (!rawQuestion) { console.warn("【调试】未能找到题目文本,5秒后重试"); setTimeout(() => { autoSolveMath(dialog); // 5秒后重试当前弹窗 }, 5000); return; } // 提取数学表达式 const expr = extractMathExpression(rawQuestion); if (!expr) { console.warn("【调试】未识别到数学表达式"); return; } console.log("【调试】最终表达式:", expr); try { const result = new Function(`return ${expr}`)(); console.log("【调试】计算结果:", result); // 选择答案 const options = dialog.querySelectorAll('.el-radio__label p p'); let found = false; for (let option of options) { if (option.innerText.trim() === result.toString()) { console.log("【调试】找到正确答案选项"); option.closest('.el-radio')?.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window })); found = true; break; } } if (!found) { console.warn("【调试】未找到匹配的答案选项"); } // 自动提交 const submitBtn = dialog.querySelector('.through_box .el-button') || dialog.querySelector('.el-button'); if (submitBtn) { console.log("【调试】找到提交按钮"); setTimeout(() => { submitBtn.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window })); }, 500); } else { console.warn("【调试】未找到提交按钮"); } } catch (e) { console.error("【调试】表达式解析失败:", expr, e); } } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址