【AI飞】AutoIT入门五(拐点):python操控autoit
目标:
终极目标:通过python调用大模型,获得结果,然后根据返回信息,控制AutoIT操作电脑软件,执行具体工作。让AI更具有执行力。
已完成部分:
关于python调用大模型的,可以参考之前的文章:
AI入门7:python三种API方式调用本地Ollama+DeepSeek_deepseek大模型下载到本地后,如何在python代码中调用-CSDN博客
AI入门8:通过vsCode用python访问公网deepseek-r1等模型(Tocken模式)-CSDN博客
AutoIT介绍,和如何安装及配置,以及运行了第一个hello程序,然后学习了基本工具的使用和基本语法,以及对桌面对象的操控,见前面文档:
【AI飞】AutoIT入门一:AutoIT来了,准备让AI动起来-CSDN博客
【AI飞】AutoIT入门二:Autolt v3 Window Info,和SciTE Script Editor的使用及鼠标操作-CSDN博客
【AI飞】AutoIT入门三:Autolt基本语法-CSDN博客
【AI飞】AutoIT入门四(重点):Autolt代替你操控计算机就快要实现了~-CSDN博客
本文,总结用python调用AutoIT,这样就离我们的目标更近了,加油💪。。。
准备
需要安装autoit,入门第一篇中有,另外需要开发环境:Trae,其安装配置可以参考之前的文档
【Ai工具】trae和传统编程环境vs+代码助手的PK,结果大捷_trae cn与通义灵码对比写代码-CSDN博客
还没安装python的朋友,可以参考之前的文档,Trae就是仿照vsCode,操作不能说一模一样,简直没有差别:
【菜鸟飞】用vsCode搭建python运行环境_code运行python环境-CSDN博客
开始
设置环境
从头弄一个独立的新环境,排除干扰:
打开Trae,菜单文件-打开文件夹,选择一个空的文件夹,作为工作目录,点击搜索,选择下面菜单,或者直接用命令ctr+shift+P:
在输入create,选择创建环境:
然后选择创建环境的方式,如果安装了Conda会有对应条目,选择一个就可以了:
然后会提示选择python的版本,选择推荐的,我这里用的是python11。
让AI写一个示例
这部分,主要是回顾Trae的使用,适合没用过Trae的小伙伴,熟悉的请略过,直接看下一部分:示例分析
让AI来写第一个程序吧,给AI输入指令:
写一个python调用autoit的入门实例,尽量具有普遍实用性。
结果,就指导了一下,我的程序文件呢。。。。
果断换一个模型:
又问了同样的问题,不错,比豆包勤快,全部接受,就创建的第一个程序:
按照下面菜单执行代码,这样会在终端 执行代码,出错好处理:
运行之后,真出错了,选中出错信息,点击系统提示的“添加到对话”按钮:
这样,在对话框直接回车,AI会分析问题,给出解决办法:
点击运行,系统在终端执行命令,加载包,同时有可能完善代码,根据代码内容自行决定是否接受,然后再次运行代码。
示例分析
总结上面的过程,第一个成功的python调用autoit的程序,首先需要安装包,安装命令:
pip install pyautoit
执行界面:
执行代码:
import autoit
import timedef autoit_notepad_example():"""AutoIt示例:打开记事本、输入文本并保存文件"""try:# 检查并安装pyautoit库try:import autoitexcept ImportError:print("请先安装pyautoit库: pip install pyautoit")return# 启动记事本autoit.run("notepad.exe")# 等待记事本窗口出现,增加超时处理if not autoit.win_wait("[CLASS:Notepad]", 10):print("错误: 记事本窗口未在10秒内出现")return# 激活记事本窗口if not autoit.win_activate("[CLASS:Notepad]"):print("错误: 无法激活记事本窗口")return# 输入文本autoit.send("这是一个AutoIt自动化测试示例。{ENTER}")autoit.send("使用Python调用AutoIt实现Windows自动化。")# 保存文件autoit.send("^s") # Ctrl+Stime.sleep(1) # 等待保存对话框出现# 在保存对话框中输入文件名autoit.control_send("[CLASS:#32770]", "Edit1", "test_autoit.txt")# 点击保存按钮autoit.control_click("[CLASS:#32770]", "Button2")# 关闭记事本autoit.win_close("[CLASS:Notepad]")print("AutoIt自动化操作完成!")except Exception as e:print(f"发生错误: {e}")if __name__ == "__main__":autoit_notepad_example()
这代码看着太眼熟了,直接就是autoit的命令,只不过多了一个autoit的包名,没啥好解释的,看不懂,说明没看前几篇入门文档,自行补课吧。
结尾
到现在,autoit可以模拟人的操作了,python可以调用autoit了,之前python访问大模型也已经实现了,所有小积木都已生产完毕,就看组合的业务了。不出意外,后面就是具体应用篇了。
这一篇好轻松,感觉还没开始就结束了,哇哈哈😄😄😄