pywinauto
Minor Enhancements and
pywinauto 是一组用于自动化 Microsoft Windows GUI 的 Python 模块。最简单的是,它允许您将鼠标和键盘操作发送到窗口对话框和控件,但它支持更复杂的操作,例如获取文本数据。
支持的底层技术:Win32 API( backend="win32"
;默认使用)、MS UI Automation( backend="uia"
)。用户输入仿真模块mouse
和keyboard
可在 Windows 和 Linux 上运行。
只需为存储库加注星标或进行捐赠即可。
您的帮助很有价值,因为这对我们所有人来说都是一个业余爱好项目:我们在下班时间进行新功能开发。
pip install -U pywinauto
(依赖项将自动安装)它很简单,并且生成的脚本非常可读。有多简单?
from pywinauto . application import Application
app = Application (). start ( "notepad.exe" )
app . UntitledNotepad . menu_select ( "Help->About Notepad" )
app . AboutNotepad . OK . click ()
app . UntitledNotepad . Edit . type_keys ( "pywinauto Works!" , with_spaces = True )
explorer.exe
的更详细示例:
from pywinauto import Desktop , Application
Application (). start ( 'explorer.exe "C: \ Program Files"' )
# connect to another process spawned by explorer.exe
# Note: make sure the script is running as Administrator!
app = Application ( backend = "uia" ). connect ( path = "explorer.exe" , title = "Program Files" )
app . ProgramFiles . set_focus ()
common_files = app . ProgramFiles . ItemsView . get_item ( 'Common Files' )
common_files . right_click_input ()
app . ContextMenu . Properties . invoke ()
# this dialog is open in another process (Desktop object doesn't rely on any process id)
Properties = Desktop ( backend = 'uia' ). Common_Files_Properties
Properties . print_control_identifiers ()
Properties . Cancel . click ()
Properties . wait_not ( 'visible' ) # make sure the dialog is closed
pip install -U Pillow
)以便能够调用capture_as_image()
方法来制作控件的快照。运行所有测试: python ./pywinauto/unittests/testall.py
非常欢迎请求请求。有关单元测试、编码约定等的更多详细信息,请阅读贡献指南。
用于本机 Windows GUI 的 Pywinauto 最初由Mark Mc Mahon编写。 Mark 利用 Python 的力量将许多伟大的想法带入生活。更多贡献者受到良好 API 的启发,以便开发继续进行。
从 0.6.0 开始 pywinauto 在 BSD 3-clause 许可证下分发。 Pywinauto 0.5.4 及之前版本在 LGPL v2.1 或更高版本下分发。