Python 自动查找新窗口对话框

Python 自动查找新窗口对话框,python,windows,pywinauto,gui-testing,Python,Windows,Pywinauto,Gui Testing,假设我用一个宏打开某个word文件,该宏用一些按钮打开一个对话框 有没有办法自动找到这些按钮并按下它们(当只有PID时)? 目前,我正在使用pywinauto自动化GUI测试。如果有办法用pywinauto实现,那就太好了 谢谢。总结所有评论: 可以使用方法.windows()(对于顶级窗口)、立即.children()和所有.substands()(整个子树作为普通列表)枚举所有窗口及其控件。您甚至可以按类名、控件类型、仅内容和/或标题筛选子项和子项 例如: print(app.windows

假设我用一个宏打开某个word文件,该宏用一些按钮打开一个对话框

有没有办法自动找到这些按钮并按下它们(当只有PID时)?
目前,我正在使用pywinauto自动化GUI测试。如果有办法用pywinauto实现,那就太好了


谢谢。

总结所有评论:

可以使用方法
.windows()
(对于顶级窗口)、立即
.children()
和所有
.substands()
(整个子树作为普通列表)枚举所有窗口及其控件。您甚至可以按类名、控件类型、仅内容和/或标题筛选子项和子项

例如:

print(app.windows()[0].descendants(control_type='Edit'))

如果您使用的是MS Word应用程序,则可以使用pywinauto中的
backend=“uia”
。如果Inspect.exe可以看到所需的对话框和按钮,则可以通过pywinauto实现自动化。请参阅以了解有关后端和核心概念的更多信息。@VasilyRyabov我正在尝试自动查找这些控件。我在Pyatowin中看不到的东西。我打开了很多文档,其中一个可以打开一些随机对话框,我希望能够看到,并自动按下“确定”按钮。例如,当说“我在pywinauto中没有看到的东西”时,你是什么意思?你要采取什么步骤才能看到它们?你能用一些代码片段、详细的输出和/或截图来编辑你的问题吗?@VasilyRyabov也许我没有正确地解释自己,我需要一种通用的方法来在一些随机窗口中找到可以显示的按钮。。按钮可以是“确定”、“下一步”、“接受”等。。。我在pyautowin中没有找到一种通用的方法来执行此操作,因为它必须是特定的(如app.SpecificDialog.OK.click())在这种情况下,您可以使用
app.windows()
枚举顶级窗口,并使用
app.windows()[0].children()
枚举整个子树的直接子树或
.substands()
。这是你需要的吗?谢谢!我希望它在pywinauto.readthedocs.io中有更多的文档记录