selenium - 带有 Chrome 浏览器的 Selenium Webdriver 不显示身份验证弹出窗口
问题描述
我正在自动化具有 LDAP 身份验证的客户端的内部应用程序。我将 Selenium 3.141.59 与 C#、Chrome 浏览器 78 一起使用。
问题: 当我手动打开浏览器并放置 url 然后浏览器显示登录弹出窗口以输入用户 ID 和密码。(参考截图)
Same time when Selenium launch browser instance then navigate to same url, it's not showing any sign-in pop-up.
Due this I was unable to continue next steps in automation.
我尝试将用户 ID 和密码连同 url 一起发送,但它也没有重定向。 https://userID:password@url
谁能帮助我,如何解决这个问题。
解决方案
您尝试过的不再支持。您现在必须在请求中包含身份验证标头。在您的情况下,我建议您设置一个代理,该代理会将标头添加到您浏览器的所有传出消息中
例如,您可以使用仅在测试中配置的Browsermob 代理。您可以在此处找到有关基本身份验证工作原理的一些详细信息。它是 Java 的解决方案,但是您可以找到要设置的标头和要分配的值(简而言之:标头 -Authorization: Basic username:password Realm=""
其中 username:password 是在 中编码的凭据对Base64
)。
这也可能对您有用:如何对 base64 字符串进行编码和解码?
UPD:这是Python Selenium 的解决方案。
推荐阅读
- magento2 - 为什么我的 js 脚本不能在 Magento 2 类别产品中运行
- r - 文件中的错误(文件,“rt”):无法打开连接(寻找其他解决方案)
- windows - 使用批处理文件自动连接到 VNC
- vue.js - 将 json 数据作为 .scss 文件中的 sass 变量导入 Nuxt
- android - 如何检查firebase是否存在value1和value2
- javascript - React Bootstrap Typeahead 指定输入字段中字符的长度
- floating-point - -41.25 的 32 位二进制等价物是多少?
- coq - 从头开始证明 coq 中的强归纳
- vhdl - VHDL Vivado 组合循环警报
- python - sklearn Logistic Regression “ValueError: Found array with dim 3. Estimator expected <= 2.”