限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410

的优雅、简洁与强大深深地吸引着我们,它海量的工具包为我们的工作提供了强有力的支持。在自动化工作中,更是一把利器mouse_event,数十行代码就能干净利落地完成很多繁琐重复的工作。本文在这里将介绍中四种常用的自动化工具包。

是一个库,为提供访问 API的扩展,提供了齐全的常量、接口、线程以及COM机制等等。这个库里面最重要的三个模块、和。

查找句柄:窗体是指窗口到文本框的所有控件,每个窗体都有独立的句柄。要操作任意一个窗体,都需要找到这个窗体的句柄。我们可以用模块中的函数和函数(子窗体函数)来得到指定窗体的句柄。(使用Spy++或可以很方便地查看目标窗口的窗口名、类名和句柄)

菜单操作:窗口的菜单就像窗口的标题栏一样,是窗口自身的一部分,不是其他窗体控件mouse_event,也就没有办法用和返回句柄。我们可以用模块中的,和函数来操作菜单。

控件操作:控件的操作基于win32的消息机制,我们可以使用模块的函数向窗体发送消息来进行操作。同时也可以利用、等函数模拟鼠标和键盘对控件进行操作。

下面的代码实现了记事本的自动保存。

是实现窗口程序自动化的一把利器,它主要操作于标准图形界面。基于,其最主要功能为对标准控件的一系列动作可编程处理,包括对窗口的指定、鼠标或键盘操作、获得控件属性等等。相比起,使用起来更方便稳定,对中文的支持度也更好。下面简单地介绍一下的使用。

首先,利用Spy++或判断窗口程序开发语言是什么,即确定。支持“win32”和“uia”两种。接着,从.中导入模块,利用().start函数或().函数关联到一个应用。如:app = (=”uia”).start('.exe')。此后,利用正则表达式进行模糊匹配找到应用app的一个窗体,如:dlg = app.( = “.*Part of Title.*”)。最后,可以对窗体上的控件模拟鼠标或键盘的操作,实现应用窗口的自动操作。

下面代码实现了对记事本菜单的操作和键盘输入。

是另一个常用的基于的GUI自动化工具,能够支持多个平台。主要是用程序自动控制鼠标和键盘操作。虽然和都是实现GUI 的自动操作,但两者的侧重点不同。侧重于鼠标、键盘、截图等功能,且是基于图像匹配进行定位的,而侧重与对系统的操作,虽然也有键盘和鼠标的模拟操作,但核心上还是软件上的操作更多。两者各有所长,需根据实际情况选择合适的。

对鼠标的移动、点击、拖拽,键盘按键输入、按住操作,以及鼠标+键盘的热键同时按住等操作都能准确模拟,可以说手能动的都可以,并且简单方便。但由于控件的定位依赖于图像匹配,所以得事先保存好控件的截图,然后在操作时自动截取屏幕,利用图像匹配找到控件在屏幕的像素位置,再将鼠标自动移至控件处点击。自带的图像匹配函数精度不是很高,可以加入中的匹配函数来代替,更加准确方便。

下面代码实现了百度网盘的自动登录。

with

与上面三种工具有点不同,它的自动化对象是各种浏览器,包括、、、IE等主流界面式的浏览器,常在爬虫应用中发挥很大的作用。最为主要的模块是模块。提供了一系列浏览器对象定位的方法,常用的有id、name、class name、tag name、xpath、link text等等。定位对象后,提供了操作对象的方法,包括清除内容clear、模拟输入、单击鼠标click、提交表单等等。有时候为了保证脚本运行的稳定性,需要在脚本中添加等待时间,有sleep、和三种方法选择。此外在多表单切换、多窗口切换、警告窗口处理、上传文件、获取验证码等方面都有相应的方法,功能强大。

下面的代码实现了模拟提交搜索功能,首先等页面加载完成,然后输入到搜索框文本,点击提交。

本文分别介绍了、、和 with 四种基于的自动化工具包。使用这些工具包可以让繁琐的工作自己动起来,实现自动化,解放我们的双手,大大地提高工作效率。不过在智能方面还有很大的提升空间,这也是未来努力的方向。

限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410