Pyautogui 无法与“用户同意”对话框交互

问题描述 投票:0回答:1

我遇到了 Windows 自动化问题。

背景:我需要自动化vPro远程桌面E2E流程,目标PC会弹出一个“用户同意”对话框来选择是否连接。我尝试使用 pyautogui 与此对话框交互,但似乎单击不起作用(我可以看到鼠标移动到目的地,并在单击功能后打印一条消息)。 我的代码如上:

            pyautogui.click(x=int(point[-2]), y=int(point[-1]), duration=0.5, clicks=2)
    
            # pyautogui.moveTo(x=int(point[-2]), y=int(point[-1]),duration=0.3)
            # pyautogui.mouseDown()
            # pyautogui.click()
            # time.sleep(0.5)
            # pyautogui.mouseUp()

            print("done") 

我也尝试通过pyautogui按键(因为在实际情况下,我可以直接按Enter键建立连接),它也不起作用

keyboard.send_keys('{ENTER}')

也许对话框位于不同的层,因此无论单击还是按键盘都不起作用?或者对话框与常见情况不同(我如何识别)?

我该如何解决这个问题?感谢您的观看和回复。

python testing automated-tests e2e-testing pyautogui
1个回答
0
投票

某些应用程序专门阻止程序向其发送虚拟点击和按键操作。 (例如,防病毒软件不希望脚本自动禁用它。)这很可能是您的对话框的问题。

此外,如果“用户同意对话框”指的是用户帐户控制 UAC 对话框,那么这些对话框是专门设计用于不允许脚本单击它们的。

© www.soinside.com 2019 - 2024. All rights reserved.