如何使用Selenium python绑定webdriver提交HTTP身份验证

8 python selenium

我正在使用Selenium python绑定为我们的Web应用程序设置自动化测试.我在beta服务器上测试网络时遇到问题,因为它需要对Intranet用户名和密码进行HTTP身份验证.

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://somewebsite.com/")
Run Code Online (Sandbox Code Playgroud)

我需要在访问http://somewebsite.com/时为弹出对话框提交用户名和密码

有一个巧妙的方法来做到这一点?

小智 9

我找到了这个问题的解决方案:

from selenium import webdriver

profile = webdriver.FirefoxProfile()
profile.set_preference('network.http.phishy-userpass-length', 255)
driver = webdriver.Firefox(firefox_profile=profile)
driver.get("https://username:password@somewebsite.com/")
Run Code Online (Sandbox Code Playgroud)

FirefoxProfile部分将关闭确认对话框,因为默认情况下Firefox会显示一个弹出对话框以防止丢弃.