nay*_*onn 2 python selenium robotframework
我需要通过按 Enter 键或 esc 键或单击取消按钮来使用 Robot Framework 处理 chrome 浏览器中弹出的身份验证。像这样
我正在尝试使用 SeleniumLibrary 按键,
Press Keys None ESC
Run Code Online (Sandbox Code Playgroud)
但这不起作用
有人知道如何解决这个问题吗?谢谢
遗憾的是,您无法通过 Selenium 进行任何操作。该窗口来自所谓的基本身份验证,其中用户需要输入用户名和密码,并在 http 级别进行处理。
您看到的控件 - 对话框 - 是一个操作系统组件,是浏览器可执行文件本身的一部分;因此,Selenium 无法与它交互 - 它被沙箱化(为了安全起见)。
有几种解决方法;基本身份验证的凭据可以通过 url 传递 - 如果目标系统没有明确禁止这样做。这是通过特殊格式的 url 完成的:
http://username:password@example.com/
Run Code Online (Sandbox Code Playgroud)
另一种是使用桌面自动化库 - AutoIt,或 Java 的 Robot。但这有两个(对我来说巨大的)缺点 - 该解决方案将取决于操作系统(例如,针对 Windows 的解决方案,对于 Mac、Linux 则不同),而且主要 - 你不能在远程 selenium 会话中使用它 - 你必须拥有它桌面自动化在远程计算机中运行,并截获桌面会话,并可从您的执行计算机访问。
| 归档时间: |
|
| 查看次数: |
4458 次 |
| 最近记录: |