近几天来有几个需求是软件自动化,之前没有接触过。在没有接触过自动化的情况下摸索了几天,找到了两个学习成本比较低的解决方案,采用的开发语言皆为Python。
Pywinauto
需准备如下环境
1.Python 3.x
python这样一门因为机器学习而大热的低学习成本的语言就不多做介绍了。
2.Python库 pywinauto
Github上Star700+的一个用于Windows GUI自动化库,官网上虽然写着Linux版本正在开发中,不过作者似乎咸鱼了有一段时间,Github上的最近一次更新也是在几个月之前。
3.Spy++
用于查看要进行自动化操作的软件的窗口句柄,简单易用。
Github: https://github.com/pywinauto/pywinauto
文档: https://pywinauto.readthedocs.io
该解决方案只适用于调用Winapi接口的应用程序,对于使用Java编写的Jar等其他类型的GUI应用则无法操作,局限性较大。且调试略显麻烦,当然也有可能是我没有掌握正确的代码调试姿势。该方案不重点介绍,放上核心代码稍微注释一下就掠过了。