随着互联网不断发展,它给我们带来便利的同时,也带来了枯燥、重复、机械的重复工作。今天,我要和大家分享一款老牌实用的自动化工具: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:不再重复工作的更多相关文章

  1. 推荐一款作图神器:ProcessOn

    本人近日发现一款作图神器:ProcessOn 它是一款在线的作图工具,完全国产,前台是用HTML5  Canvas加javascript做绘图,后台用java实现数据处理和图片生成, 整站UI基本类似 ...

  2. 推荐一款Python神器,5 行 Python 代码 实现一键批量扣图

    今天给大家分享一款Python装逼实用神器. 在日常生活或者工作中,经常会遇到想将某张照片中的人物抠出来,然后拼接到其他图片上去.专业点的人可以使用 PhotoShop 的"魔棒" ...

  3. 推荐一款IDEA神器!一键查看Java字节码以及其他类信息

    由于后面要分享的一篇文章中用到了这篇文章要推荐的一个插件,所以这里分享一下.非常实用!你会爱上它的! 开始推荐 IDEA 字节码查看神器之前,先来回顾一下 Java 字节码是啥. 何为 Java 字节 ...

  4. 推荐三款 Mac 上的理财神器 iCompta、Rublik、UctoX

    今天推荐三款理财神器,像个人的话可以使用 iCompta(个人财务管理)一款软件就好了,但有些朋友可能有关注汇率的需求,可以使用 Rublik(汇率动态),还有一些小伙伴可能有自己的公司等原因财务量较 ...

  5. 推荐一款最强Python自动化神器!不用写一行代码!

    搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: selenium.结合标准的WebDriver API来编写Python自动化脚本,可以实现解放双手,让脚本代替人 ...

  6. 推荐一款最强Python自动化神器!再也不用写代码了!

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: seleniu ...

  7. 推荐一款全能测试开发神器:Mockoon!1分钟快速上手!

    1. 说一下背景 在日常开发或者测试工作中,经常会因为下游服务不可用或者不稳定时,通过工具或者技术手段去模拟一个HTTP Server,或者模拟所需要的接口数据. 这个时候,很多人脑海里,都会想到可以 ...

  8. 推荐一款接口 API 设计神器!

    今天栈长给大家推荐一款接口 API 设计神器,传说中的,牛逼哄洪的 Swagger,它到底是什么?今天为大家揭开谜底! Swagger是什么? 官网:https://swagger.io/ Swagg ...

  9. 推荐一款 MyBatis 开发神器,为简化而生!

    Java技术栈 )); MyBatis-Plus将会生成以下查询SQL: SELECT * FROM user WHERE age >= 18FROM user WHERE age >=  ...

  10. 推荐一款技术人必备的接口测试神器:Apifox

    1. 背景 作为互联网行业技术从业者,接口调试是必不可少的一项技能,通常我们都会选择使用 Postman 这类工具来进行接口调试,在接口调试方面 Postman 做的确实非常出色.当然除了Postma ...

随机推荐

  1. QA|20211013|SecureCRT:如图,有很多^,中文显示有问题,乱码,如何解决

    Q1:如图,有很多^,中文显示有问题,乱码,如何解决 Q2:securecrt的vi展示有问题:少很多字.有很多^M和^,光标无法移动到最右侧 A: 首先检查当前编码格式: 1 echo $LANG ...

  2. Unity 游戏开发、01 基础知识大全、简单功能脚本实现

    2.3 窗口布局 Unity默认窗口布局 Hierarchy 层级窗口 Scene 场景窗口,3D视图窗口 Game 游戏播放窗口 Inspector 检查器窗口,属性窗口 Project 项目窗口 ...

  3. FreeSWITCH添加h264编码及pcap视频提取

    操作系统 :CentOS 7.6_x64.Windows 10_x64 FreeSWITCH版本 :1.10.9 Python版本:3.9.2 一.启用h264相关模块 这里以 mod_openh26 ...

  4. 使用ensp搭建路由拓扑,并使用ospf协议实现网络互通实操

    转载请注明出处: 1.使用ENSP 搭建如下拓扑: 数据准备 为完成此配置例,需准备如下的数据: 设备 Router ID Process ID IP地址 DeviceA 1.1.1.1 1 区域0: ...

  5. Dash 2.14版本开始支持动态回调注册!

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/dash-master 大家好我是费老师,就在昨晚,Dash框架发布了其2.14.0新版本,新增的功能 ...

  6. 基本操作:vscode快捷键

      1.复制,剪切 补选中具体内容的话,光标放在这一行的任何位置,输入Ctrl+C,就表示已经复制这一行了:直接Ctrl+V可以粘贴: 截切也一样:光标放在这一行的任何位置,输入Ctrl+X,就表示已 ...

  7. linux知识点 ROM,RAM,SRAM,DRAM,Flash

    参考视频:https://www.bilibili.com/video/BV13L4y1b7So?spm_id_from=333.337.search-card.all.click SRAM,DRAM ...

  8. 为.NET打开新大门:OpenVINO.NET开源项目全新发布

    为.NET打开新大门:OpenVINO.NET开源项目全新发布 在AI的应用越来越广泛的今天,优化深度学习模型并进行推理部署已经成为了一门必要的技术.Intel开发的OpenVINO工具包(Open ...

  9. log4j2同步日志引发的性能问题

    1 问题回顾 1.1 问题描述 在项目的性能测试中,相关的接口的随着并发数增加,接口的响应时间变长,接口吞吐不再增长,应用的CPU使用率较高. 1.2 分析思路 谁导致的CPU较高,阻塞接口TPS的增 ...

  10. go使用snmp库查询mib数据

    转载请注明出处: OID(Object Identifier)是一种用于标识和唯一命名管理信息库中的对象的标准方式.给定一个OID,可以确定特定的管理信息库对象,并对其进行操作. go语言使用snmp ...