遗憾的是,在这里您无法通过 Selenium 做任何事情。这个窗口来自所谓的基本身份验证,用户需要输入用户名和密码,并在 http 级别处理。
您看到的控件 - 对话框 - 是一个操作系统组件,是浏览器可执行文件本身的一部分;因此,Selenium 无法与它交互——它被沙盒化(出于安全目的)。
有几种解决方法;基本身份验证的凭据可以通过 url 传递 - 如果目标系统没有明确禁止。这是通过 url 的特殊格式完成的:
http://username:[email protected]/
另一种方法是使用桌面自动化库——AutoIt 或 Java 的 Robot。但这有 2 个(对我来说是巨大的)缺点 - 解决方案将依赖于操作系统(例如,一个用于 Windows,不同用于 Mac、Linux),主要是 - 你不能在远程 selenium 会话中使用它 - 你必须拥有它在远程机器上运行的桌面自动化,它拦截一个桌面会话,并可以从您的执行机器访问。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句