我们公司现在产品是基于 WPF 框架完成的 Windows 客户端,因为大部分功能都是表单填写,工作重复度很高,我就想用 Python 来实现 UI 自动化。
但是用 pywinauto 打印控件列表一直报 “pywinauto.findwindows.ElementNotFoundError” 错误,Spy++ 也只能识别到客户端外层的窗口,识别不到里面的子控件。
用 pyautogui 又觉得图像识别有准确度问题。
所以想请教大家,有没有什么好的方法识别客户端里的控件来完成自动化,或者是因为自定义控件导致识别不了,有没有更精准的图片识别模块来配合 pyautogui 进行自动化?
还望各位不吝赐教 谢谢。
pywinauto 代码如下:

from pywinauto.application import Application
import win32gui

handle = win32gui.FindWindow(None,'医院感染信息管理系统7.0')

app = Application(backend='uia').connect(handle = handle)

wind = app.window(title_re="医院感染信息管理系统7.0")

wind.print_control_identifiers()


↙↙↙阅读原文可查看相关链接,并与作者交流