通过 AutoIt
实现电脑的自动化操作及批量操作,高效的处理一些重复繁琐操作。
AutoIt v3 是用以编写并生成具有 BASIC 语言风格的脚本程序的免费软件,它被设计用来在Windows GUI(用户界面)中进行自动操作。通过它可以组合使用模拟键击、鼠标移动和窗口/控件操作等来实现自动化任务,而这是其它语言所无法做到或尚无可靠方法实现的(比如VBScript和SendKeys)。
相关站点: AutoIt官网 AutoIt在线文档 AutoIt下载页面
第1步 安装及配置 AutoIt
前往 AutoIt 官网,选择最新的版本进行下载安装,本文使用的版本为 3.3.16.1。
编辑工具 SciTE
可根据需要安装中文界面补丁,进入 AutoIt多国语言补丁下载页面 ,点击Chinese 1.73 (Simplified - GB2312)
选项进行下载,将文件名修改为locale.properties
并移动至软件安装目录,默认安装目录为:
C:\Program Files (x86)\AutoIt3\SciTE
为避免 SciTE
中显示中文出现乱码,需依次点击SciTE
菜单栏:选项
- 打开User Options文件
在编辑框中输入如下代码并进行保存。
code.page=936
output.code.page=936
character.set=134
第2步 了解各组件功能
组件名称 | 组件功能 |
---|---|
SciTE | 开源文本编辑器,用于编辑自动化代码,并可直接运行代码。 |
AutoIt Window Info | 窗口信息工具,用于获取 windows 系统各项参数及坐标。 |
Compile Script to .exe | 文件转换工具,用于将脚本转换为系统能直接执行的 .exe 文件。 |
Run Script | 执行代码工具,用于执行自动化代码。 |
第3步 基本操作流程
首先分析需要进行的操作的全流程,找出重复点击、重复输入等可循化的部分,必要时可绘制简易流程图已清晰思路。
打开 SciTE
编辑自动化脚本,使用AutoIt Window Info
工具查询窗口、按钮、输入框等位置信息。编辑过程中可在 SciTE
中依次点击菜单栏 工具
-执行
执行代码,发现并修复错误。
执行无问题后,使用 Compile Script to .exe
工具将脚本转化为.exe
可执行文件,方便随时使用。
第4步 常用语句实例
下表为常用的语句,更多操作可访问 AutoIt 在线文档了解。
- 增加全局按下
PAUSE
按钮强制暂停功能
Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
Func TogglePause()
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('脚本暂停执行',0,0)
WEnd
ToolTip("")
EndFunc
- 增加全局按下
Esc
按钮强制退出功能
HotKeySet("{Esc}", "_Exit")
Func _Exit()
Exit
EndFunc
- 弹出提示框,需点击确定后继续
MsgBox(64,"操作提示","请使用浏览器打开并登陆“xxxx”,并将窗口最大化。执行完上述操作后鼠标单击“确定”按钮继续。",60)
- 增加 1000ms 延迟
Sleep(1000)
- 鼠标左键单机操作
MouseClick("left",55,45)
- 文本输入操作
Send("12345678")
- 循环语句
For $x=1 to 10
XXXXX
Next
- 用户判断操作
$i = MsgBox(36,"操作提示","是否继续执行?(若10秒内无操作将继续运行)",10)
If $i =7 Then
Exit
Else
EndIf
第5步 常见按键操作
- 键盘输入
Ctrl
+A
操作
Send("{CTRLDOWN}");
Send("a");
Sleep(10)
Send("{CTRLUP}");
- 关闭键盘大写锁定状态
Send("{SHIFTDOWN}{SHIFTUP}");
- 键盘重复输入
Del
键 8 次
Send("{DEL 8}");
- 键盘重复输入
Del
或a
键 n(变量)次
$n = 8
Send("{DEL " & $n & "}");(适用于按键)
Send("{" & $n & "} a");(适用于 ASCII 字符)
- 键盘长按
A
键 800 毫秒
Send("{CTRLDOWN}");
Send("{a down}");
Sleep(800)
Send("{a up}");
代码 | 对应按键 | 代码 | 对应按键 | |
---|---|---|---|---|
! |
Alt |
{UP} |
向上箭头 | |
+ |
Shift |
{DOWN} |
向下箭头 | |
^ |
Ctrl |
{LEFT} |
向左箭头 | |
# |
Windows |
{RIGHT} |
向右箭头 | |
{!} |
! |
{HOME} |
Home |
|
{#} |
# |
{END} |
End |
|
{+} |
+ |
{ESC} |
ESC |
|
{^} |
^ |
{INS} |
Insert |
|
{{} |
{ |
{PGUP} |
PageUp |
|
{}} |
} |
{PGDN} |
PageDown |
|
{SPACE} |
空格 | {F12} |
F12 功能键 |
|
{ENTER} |
回车键 | {TAB} |
TAB |
|
{PRINTSCREEN} |
截图键 | {PAUSE} |
PAUSE |
|
{LWIN} |
左徽标键 | {ALTDOWN} |
按住 ALT |
|
{RWIN} |
右徽标键 | {SHIFTUP} |
松开 SHIFT |
|
{SCROLLLOCK on} |
SCROLLLOCK 开 |
{CTRLDOWN} |
按住 CTRL |
|
{CAPSLOCK off} |
CAPSLOCK 关 |
{WINDOWN} |
按住Windows |
|
{NUMLOCK toggle} |
NUMLOCK 切换 |
{SLEEP} |
系统休眠键 |
Fn
键无法被AutoIt
模拟。
第6步 常见窗口控件操作
代码 | 对应控件操作 |
---|---|
{TAB} |
切换到(焦点切换)下一个控件(按钮、复选框等) |
+{TAB} |
切换到上一个控件 |
^{TAB} |
切换到下一个窗口标签 |
^+{TAB} |
切换到上一个窗口标签 |
{SPACE} |
可用来切换复选框的选中状态或点击某个按钮 |
{+} |
选中某个复选框(如果它“确实是”复选框的话) |
{-} |
取消选中某个复选框 |
{DOWN} |
移动焦点到下一个菜单项 |
{UP} |
移动焦点到上一个菜单项 |
{LEFT} |
切换到左边的菜单或收缩子菜单 |
{RIGHT} |
切换到右边的菜单或展开子菜单 |