gpt4 book ai didi

c# - 使用 Selenium 完成 Internet Explorer 身份验证对话框

转载 作者:行者123 更新时间:2023-11-30 23:01:10 24 4
gpt4 key购买 nike

我正在使用 Selenium 来模拟用户来自动化一些遗留软件。该软件仅适用于 IE6(我在兼容模式下使用 IE11)并且有点废话。

Windows 安全对话框出现在软件中的某个位置。在用户/模拟器可以继续之前,这需要凭据。

我正在使用 IAlert.SetAuthenticationCredentials 尝试填充对话框,但这似乎不起作用。要从这里继续,我可以手动输入详细信息,但是 Selenium 似乎认为主浏览器窗口已经关闭:

Currently focused window has been closed.

此时 WindowHandles 集合是空的,但浏览器窗口仍然打开,并且呈现了正确的页面。

这是怎么回事?

Screenshot

更新

提供的答案是关于如何处理对话的建议。我想知道为什么 Selenium 认为浏览器窗口已关闭,而实际上它仍然存在。

最佳答案

无法通过 selenium 与 native 窗口交互。处理您的问题的方法是例如在 Java 中使用 Robot 的模拟。由于您使用的是 C#,这里有一个模拟器 https://www.codeproject.com/Articles/28064/Global-Mouse-and-Keyboard-Library .

示例代码如下:

// Simulate (Ctrl + C) shortcut, which is copy for most applications
KeyboardSimulator.SimulateStandardShortcut(StandardShortcut.Copy);

// This does the same as above
KeyboardSimulator.KeyDown(Keys.Control);
KeyboardSimulator.KeyPress(Keys.C);
KeyboardSimulator.KeyUp(Keys.Control);

还有鼠标模拟器,因此使用此框架可以在窗口中输入所需的值并接受它。

关于c# - 使用 Selenium 完成 Internet Explorer 身份验证对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51191260/

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