gpt4 book ai didi

python - 如何使用 PyWinAuto 单击对话框中的按钮

转载 作者:行者123 更新时间:2023-11-28 18:03:52 25 4
gpt4 key购买 nike

我有一个批处理文件,我执行它来打开一个程序。然后出现一个对话框,我在其中输入用户名和密码凭据

我打印控件标识符并列出;

SunAwtDialog - 'Login'    (L528, T242, R853, B501)
['SunAwtDialog', 'LoginSunAwtDialog', 'Login']
child_window(title="Login", class_name="SunAwtDialog")

所以读完这个post .我的理解是像这样使用窗口+按钮和点击方法;

dlp.SunAwtDialog['Login'].click()

但这会一直抛出 ElementNotFoundError

ElementNotFoundError: {'best_match': 'SunAwtDialog', 'top_level_only': False, 'parent': <win32_element_info.HwndElementInfo - 'Login', SunAwtDialog, 2164976>, 'backend': 'win32'}

下面是完整的代码片段;

from pywinauto import application
import time
app = application.Application()
app.start(r"C:\\WINDOWS\system32\cmd.exe", wait_for_idle=False)
dlg = app.top_window()
dlg.type_keys('D:{ENTER}')
dlg.type_keys('cd{SPACE}Software\\client{ENTER}')
dlg.type_keys('run_client.bat{ENTER}')
time.sleep(10)
new_app = application.Application().connect(title="iManager")
dlp = new_app.top_window()
#type username + password
dlp.type_keys('user')
dlp.type_keys('{TAB}')
dlp.type_keys('pass')
#print control identifiers
dlp.print_control_identifiers()
#click login[![enter image description here][1]][1]
dlp.SunAwtDialog['Login'].click()

您可以在图片下方看到我希望能够单击的“登录”按钮。 “服务器”选项旁边还有另一个按钮,但它不在我的控件标识符中

Dialog box

最佳答案

我为此使用的解决方案是使用 send_keys。试试这个:

from pywinauto.keyboard import send_keys
send_keys("{VK_MENU down}" "l" "{VK_MENU up}")

关于python - 如何使用 PyWinAuto 单击对话框中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54670224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com