强!推荐一款自动化神器Autolt:不再重复工作
随着互联网不断发展,它给我们带来便利的同时,也带来了枯燥、重复、机械的重复工作。今天,我要和大家分享一款老牌实用的自动化工具:AutoIt,它能够让你告别繁琐的重复性工作,提高工作效率。
这里透露一下,AutoIt算是作者在10年前,用的最多的一款自动化测试工具了。当时自动化测试工具还并没有像如今这么“繁荣”,当年作者最常用的自动化组合技能:
AutoIt+QTP+VBS。
1、AutoIt介绍
AutoIt是一款类似BASIC脚本语言,且完全免费用于自动化Windows操作系统的脚本语言和工具集。
它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现各类自动化任务,包括自动化软件安装、登录、数据自动录入、界面自动化测试、数据抓取等,以及可以和其他自动化工具结合起来使用,比如,我们在使用Selenium做自动化测试Web应用时,当弹出一个选择文件的弹框,由于这个弹框是属于操作系统的而非浏览器,Selenium程序就无法进行后续的操作了,这时侯就我们就可以使用AutoIt编写自动化脚本,来执行后续的自动选择文件的操作。
2、AutoIt特点、适用场景
AutoIt 的语法简单易懂,适合新手入门,但同时支持的功能也非常强大,适合高级用户进阶使用。
例如:AutoIt支持非常丰富的内置函数和库,可以方便地处理窗口、文件、注册表等系统资源。此外,AutoIt还提供了一个独立的编辑器和编译器,可以将脚本编译成可执行文件,方便在没有安装AutoIt环境的计算机上运行。
AutoIt广泛应用于自动化测试、系统管理、软件部署等领域,是一个功能强大且易于上手的自动化工具。由于其灵活性和可扩展性,AutoIt也被许多人用于编写各种自定义的Windows脚本和小工具。
AutoIt在以下应用场景包括但不限:
- 自动化软件安装和配置:AutoIt可以模拟用户的鼠标和键盘操作,用于自动安装和配置软件,包括点击按钮、输入文本、选择选项等操作。
- UI界面自动化测试:AutoIt可以用于自动化测试,模拟用户操作来测试应用程序的界面和功能,以确保其正常工作。
- 数据抓取和处理:AutoIt可以用于抓取网页数据、处理Excel表格、操作数据库等,实现自动化的数据处理任务。
- 系统管理:AutoIt可以用于自动化执行系统管理任务,如自动备份文件、清理临时文件、定时执行特定任务等。
- 自定义工具开发:AutoIt可以用于编写各种自定义的Windows脚本和小工具,满足特定需求,如快速文件重命名、自动化文件操作等。
总之,AutoIt是一个功能强大的自动化工具,适用于各种需要自动化操作的场景,能够大大提高工作效率和减少重复性工作。
3、AutoIt安装、使用
1、访问AutoIt官网
https://www.autoitscript.com/site/autoit/
2、官网WIKI中,提供了详细的帮助文档、使用教程,非常适用新手入门

在编写自动化脚本时,AutoIt 提供了强大的功能,可以处理鼠标和键盘事件,注册热键,发送指定消息,操作窗口和控件,甚至可以调用 Windows API 函数,以及处理 Excel 文件和截屏等,可以满足各种自动化需求。
3、使用前,先下载:
https://www.autoitscript.com/site/autoit/downloads/
安装完成后打开AutoIt v3所在的文件夹

4、查看API手册:

也可以访问AutoIt在线版帮助文档:
https://www.autoitx.com/Doc/
5、提取窗口信息
打开AutoIt提供的窗口信息提取工具

将Finder Tool的定位光标拖拽到窗口中的某控件上,获取窗口及控件相关信息
6、以下是一些AutoIt自动化脚本的实用示例
自动化软件安装:模拟用户的鼠标和键盘操作,自动安装软件并完成配置,如下所示:
Run("setup.exe")
WinWaitActive("Setup")
Send("{ENTER}")
WinWaitActive("License Agreement")
Send("!a")
Send("{ENTER}")
WinWaitActive("Select Destination Location")
Send("{ENTER}")
WinWaitActive("Select Additional Tasks")
Send("{ENTER}")
WinWaitActive("Ready to Install")
Send("{ENTER}")
WinWaitActive("Installation Complete")
Send("{ENTER}")
界面测试:模拟用户的操作来测试应用程序的界面和功能,如下所示:
Run("notepad.exe")
WinWaitActive("Untitled - Notepad")
Send("This is a test.")
Send("{ENTER}")
WinWaitActive("Save As")
Send("test.txt")
Send("{ENTER}")
WinWaitActive("Notepad")
Send("!f")
Send("x")
数据抓取和处理:抓取网页数据、处理Excel表格、操作数据库等,如下所示:
#include <Excel.au3>
Local $oExcel = _Excel_Open()
Local $oWorkbook = _Excel_BookNew($oExcel)
_Excel_RangeWrite($oWorkbook, Default, "A1")
_Excel_RangeWrite($oWorkbook, Default, "B1")
_Excel_RangeWrite($oWorkbook, Default, "C1")
_Excel_RangeWrite($oWorkbook, Default, "A2", "http://www.example.com")
_Excel_RangeWrite($oWorkbook, Default, "B2", "Example")
_Excel_RangeWrite($oWorkbook, Default, "C2", "12345")
_Excel_SaveAs($oWorkbook, "example.xlsx")
_Excel_Close($oExcel)
系统管理:自动化执行系统管理任务,如自动备份文件、清理临时文件、定时执行特定任务等,如下所示:
FileCopy("C:\Users\user\Desktop\example.txt", "C:\Users\user\Documents\backup\example.txt")
DirRemove("C:\Windows\Temp", 1)
Sleep(60000)
Run("C:\Users\user\Desktop\example.exe")
7、将au3转换为exe
AutoIt脚本后缀为.au3,双击脚本文件,即可运行脚本,也可以将脚本自动转换成exe文件。
例如,选择demo.au3文件,点击Convert按钮生成demo.exe文件

4、小结
总之,AutoIt是一个非常有用的自动化工具,可以帮助我们自动化执行各种任务,提高工作效率。这里提供的示例和功能特性只是其中的一小部分,实际上,AutoIt还有很多强大的功能和库,可以实现更多的自动化任务。来吧,小兄弟,如果你还在为每天重复而枯燥的工作而烦恼,不妨来试试Autolt吧!
强!推荐一款自动化神器Autolt:不再重复工作的更多相关文章
- 推荐一款作图神器:ProcessOn
本人近日发现一款作图神器:ProcessOn 它是一款在线的作图工具,完全国产,前台是用HTML5 Canvas加javascript做绘图,后台用java实现数据处理和图片生成, 整站UI基本类似 ...
- 推荐一款Python神器,5 行 Python 代码 实现一键批量扣图
今天给大家分享一款Python装逼实用神器. 在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒" ...
- 推荐一款IDEA神器!一键查看Java字节码以及其他类信息
由于后面要分享的一篇文章中用到了这篇文章要推荐的一个插件,所以这里分享一下.非常实用!你会爱上它的! 开始推荐 IDEA 字节码查看神器之前,先来回顾一下 Java 字节码是啥. 何为 Java 字节 ...
- 推荐三款 Mac 上的理财神器 iCompta、Rublik、UctoX
今天推荐三款理财神器,像个人的话可以使用 iCompta(个人财务管理)一款软件就好了,但有些朋友可能有关注汇率的需求,可以使用 Rublik(汇率动态),还有一些小伙伴可能有自己的公司等原因财务量较 ...
- 推荐一款最强Python自动化神器!不用写一行代码!
搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: selenium.结合标准的WebDriver API来编写Python自动化脚本,可以实现解放双手,让脚本代替人 ...
- 推荐一款最强Python自动化神器!再也不用写代码了!
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: seleniu ...
- 推荐一款全能测试开发神器:Mockoon!1分钟快速上手!
1. 说一下背景 在日常开发或者测试工作中,经常会因为下游服务不可用或者不稳定时,通过工具或者技术手段去模拟一个HTTP Server,或者模拟所需要的接口数据. 这个时候,很多人脑海里,都会想到可以 ...
- 推荐一款接口 API 设计神器!
今天栈长给大家推荐一款接口 API 设计神器,传说中的,牛逼哄洪的 Swagger,它到底是什么?今天为大家揭开谜底! Swagger是什么? 官网:https://swagger.io/ Swagg ...
- 推荐一款 MyBatis 开发神器,为简化而生!
Java技术栈 )); MyBatis-Plus将会生成以下查询SQL: SELECT * FROM user WHERE age >= 18FROM user WHERE age >= ...
- 推荐一款技术人必备的接口测试神器:Apifox
1. 背景 作为互联网行业技术从业者,接口调试是必不可少的一项技能,通常我们都会选择使用 Postman 这类工具来进行接口调试,在接口调试方面 Postman 做的确实非常出色.当然除了Postma ...
随机推荐
- QA|linux指令awk '{print $(NF-1)}'为啥用单引号而不是双引号?|linux
linux指令awk '{print $(NF-1)}'为啥用单引号而不是双引号? 我的理解: 因为单引号不对会内容进行转义,而双引号会,举个栗子 1 a=1 2 echo "$a" ...
- 图解Spark排序算子sortBy的核心源码
原创/朱季谦 一.案例说明 以前刚开始学习Spark的时候,在练习排序算子sortBy的时候,曾发现一个有趣的现象是,在使用排序算子sortBy后直接打印的话,发现打印的结果是乱序的,并没有出现完整排 ...
- ERROR: <bits/stdc++.h>, 'cstdalign' file not found, running C++17
Modified 1 year, 1 month ago Viewed 9k times 4 I'm trying to run a piece of code in Visual Studio Co ...
- CF82D Two out of Three
题目描述 Vasya has recently developed a new algorithm to optimize the reception of customer flow and he ...
- docker入门加实战—docker常见命令
docker入门加实战-docker常见命令 在介绍命令之前,先用一副图形象的展示一下docker的命令: 常见命令 docker的常见命令和文档地址如下表: 命令 说明 文档地址 docker pu ...
- UVA10054 The Necklace 题解
好可恶一道题,怎么没人告诉我输出之间有空行( 思路是先抽象成图,然后跑一边dfs记录边的前后顺序. 对于不能成环的情况,只需要再开个数组记录度数判断奇点即可. 若存在奇点则break掉,剩下的跑dfs ...
- 使用卷积神经网络训练手写数字识别模型(CNN)
https://www.cnblogs.com/zylyehuo/ 效果展示 目录结构 README.md # Basic MNIST Example pip install -r requireme ...
- 《最新出炉》系列初窥篇-Python+Playwright自动化测试-21-处理鼠标拖拽-番外篇
1.简介 前边宏哥拖拽有提到那个反爬虫机制,加了各种参数,以及加载js脚本文件还是有问题,偶尔宏哥好像发现了解决问题的办法,看到了黎明的曙光,宏哥就说试一下看看行不行,万一实现了.结果宏哥试了结果真的 ...
- 【虹科干货】Redis Enterprise vs ElastiCache——如何选择缓存解决方案?
使用Redis 或 Amazon ElastiCache 来作为缓存加速已经是业界主流的解决方案,二者各有什么优势?又有哪些区别呢? 为了提高 Web 应用程序和数据驱动服务的性能与效率,使用 Red ...
- 🔥🔥TCP协议:三次握手、四次挥手,你真的了解吗?
什么是TCP网络分层 应⽤层 应用层是网络协议栈中的最顶层,主要负责应用程序之间的通信.其中一种常见的应用层协议是HTTP协议,它定义了应用程序之间如何传递报文. 传输层 传输层是为两台主机之间的应用 ...