我正在使用Selenium python绑定为我们的Web应用程序设置自动化测试。在Beta服务器上测试Web时遇到问题,因为它要求对Intranet用户名和密码进行HTTP身份验证。
from selenium import webdriver driver = webdriver.Firefox() driver.get("https://somewebsite.com/")
访问http://somewebsite.com/后,我需要为弹出对话框提交用户名和密码。
有没有一种整齐的方法可以做到这一点?
我找到了这个问题的解决方案:
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/")
FirefoxProfile部分将关闭确认对话框,因为默认情况下,Firefox将显示一个弹出对话框以防止欺骗。