pywinauto

安装

安装pywinauto前需要安装ctypes和sendkeys

ctypes已经包含在python2.6版本以上的开发包里

安装sendkeys和pywinauto,这里不得不说一下安装过程中的多么痛的领悟

本机是64位的,每次安装sendkeys提示 python2.7 not installed 并且 pywinauto也安装失败,后来看了一些资料,换了一台32位的机子,一切都解决了 Orz....

应用

pywinauto代码结构

Application.py:与app相关
Findwindows.py:窗体的查找
Timings.py:各种操作的时间间隔设置
win32_controls.py:普通控件的访问
common_controls.py:TreeView/ListView...等控件的访问
Menuwrapper.py:菜单的访问

pywinauto使用方法

1.启动程序
from pywinauto import application
app = application.Application.start('notepad.exe')
start函数里面即为在cmd中启动的命令+参数

2.查找窗口
这里首先插一嘴,关于中文:可以 "string".decode('gb2312') 或者直接在中文前面加 u,表示unicode
两种方法:
#1.top_dlg = app.top_window_() 获取最上方的window,但是如果在测试过程中出现异常,其他窗口跑到上面,则会导致case失败;故而不推荐这个方法。
#2.find_dlg = app.window_(title_re = ‘’, class_name = ‘’) 
这个方法可以根据title和class名获取窗口;title和class具体可以使用spy ++ lite获取。

3.在窗口中找到特定按钮
在pywinauto中,对话框下面的是controller,button,checkbox,textbox等都是controller
print_control_identifiers() 方法来打印出该窗口中所有的controller









http://my.oschina.net/yangyanxing/blog/167042
http://www.cnblogs.com/gannan/archive/2013/01/08/2851825.html


你可能感兴趣的:(py,windows)