[AutoHotKey] 模拟键鼠,安全教育自动做题:2022年中小学生(幼儿)秋季开学安全第...
本帖最后由 wkdxz 于 2022-9-26 18:47 编辑代码头部,具体功能直接看注释(全都有)
#NoEnv ;避免检查空变量是否为环境变量
#WinActivateForce ;强制激活窗口
#SingleInstance force ;强制替换旧版本脚本
Process, Priority, , High ;脚本优先级最高
DetectHiddenWindows, On ;检测隐藏窗口
SetTitleMatchMode, 2 ;窗口检测匹配部分关键词
SetWinDelay, 0 ;两个窗口切换延时
SetKeyDelay, 0 ;两次按键延时
SetMouseDelay, 0 ;两次点击延时
SetDefaultMouseSpeed, 0 ;鼠标移动速度最快
SetWorkingDir %A_ScriptDir%;设置工作目录
为各个选项设置键盘按键
A() ;直接空格确定
{
Sleep 400
Send {Tab}
Sleep 100
Send {Space}
Return
}
B() ;按一次向下
{
Sleep 400
Send {Tab}
Sleep 100
Send {Down}
Return
}
C()
{
Sleep 400
Send {Tab}
Sleep 100
Send {Down 2}
Return
}
D()
{
Sleep 400
Send {Tab}
Sleep 100
Send {Down 3}
Return
}
E()
{
Sleep 400
Send {Tab}
Sleep 100
Send {Down 4}
Return
}
F()
{
Sleep 400
Send {Tab}
Sleep 100
Send {Down 5}
Return
}
T() ;直接按TAB键
{
Sleep 100
Send {Tab}
Sleep 100
Return
}
使用F2热键激活,通过分割字符,逐个调用按键函数填写答案,最后将鼠标移动到提交按钮附近
F2::
答案 = A|A|B|B|B|A|A|A|A|F|A|B||A|A|A|A|A|A|A|A|t|t||A|A|A|A|A|A|t||B|B
Loop, Parse, 答案, |, `r ;答别的题目
{
chang := StrLen(A_LoopField)
if chang > 0
{
StringUpper, out, A_LoopField ;将每一行数据定义转为大写,输出为out函数
StringReplace, out, out, %A_SPACE%, , All ;替换out函数的无关字符
StringReplace, out, out, ., , All
StringReplace, out, out, `r`n`r`n, `r`n, All
if out = 对 ;对就是A
A()
if out = 错 ;错就是B
B()
if out = A
A()
if out = B
B()
if out = C
C()
if out = D
D()
if out = E
E()
if out = F
F()
if out = T
T()
send {apace}
sleep 100
}
}
MouseMove, 450, 977
Return
AutoHotKey软件论坛里有,搜一个就是,软件安装了才能执行代码,懒得编译了。 题目要是变了, 答案不是对不上了? 答案是不是有可能在前端? xytf 发表于 2022-9-26 18:11
题目要是变了, 答案不是对不上了? 答案是不是有可能在前端?
只针对“2022年中小学生(幼儿)秋季开学安全第一课”的选择题部分,不是全站适用的。 AutoHotKey软件下载的页面不存在或者已删除…… 感谢分享,下载试用{:301_992:} 学习了。
如果自动化还是挺方便的
kexue8 发表于 2022-9-26 18:01
AutoHotKey软件下载的页面不存在或者已删除……
百度搜一个挺多的 wkdxz 发表于 2022-9-26 18:44
百度搜一个挺多的
好的,谢谢啦 油猴有脚本可以自动答题的,答案应该在前端。 meforeg 发表于 2022-9-26 19:39
油猴有脚本可以自动答题的,答案应该在前端。
搜过了,这个题目暂时还没出,所以才有了这个脚本。