之前想用python自动化操作一个应用,搜索了很多的listview关键字,都没有一个确切的说法,包括问了chatgpt也一直报错无法解决问题。尝试了很多方法,目前已解决问题,所以干脆自己建立一个,希望能够给其他人提供帮助,也算是学习路上的一个记录。
目标:对于一个应用窗口如图所示,完成自动化双击元素“VPN Gate 公共 VPN 中继服务器”打开下一级窗口的操作。
第一步:要做到双击图中蓝色区域“Vpn Gate 公共VPN 中继器”,我们就需要先搞清这个区域是什么控件。这时我们先需要用pywinauto库中的Application打开并绑定我们的程序主窗口,并打印其窗口信息。
from pywinauto import Application
#通过该方式先从安装位置打开该应用
app = Application().start(r'C:\Program Files\SoftEther VPN Client\vpncmgr_x64.exe')
#然后将对象绑定到应用窗口
app.connect(path=r'C:\Program Files\SoftEther VPN Client\vpncmgr_x64.exe')
#调用并用dig绑定顶级窗口
dig=app.top_window()
#然后根据内置方法print_control_identifiers()在系统中打印该窗口的相关信息
dig.print_control_identifiers()
这时你会获得如下的信息打印: