使用Selenium在Python中进行BASIC HTTP认证的问题

1 投票
1 回答
1099 浏览
提问于 2025-04-20 18:22

我正在尝试测试一个有基本认证的网页应用(当我访问某个页面时,会弹出一个窗口要求用户认证,这个窗口不在HTML里)。在输入用户名和密码并点击弹窗上的确认后,主登录页面就会出现。

现在,我需要一个方法来在Firefox浏览器中处理这个弹窗的用户认证。我参考了一些旧的Stack Overflow文章,但尝试后发现这些方法对我不起作用。

有没有人能指导我该怎么做?我已经安装了Selenium 2.5.0,并且在用Python编写脚本。

profile = webdriver.FirefoxProfile()
profile.set_preference("network.automatic-ntlm-auth.trusted-uris", "website url")
driver = webdriver.Firefox(firefox_profile=profile)
driver.get("http://username:password@WebsiteURL")

1 个回答

0

要让这个用户:密码的方式正常工作,你需要设置另一个选项:

profile.setPreference("network.http.phishy-userpass-length", 255);

参考链接

顺便说一下,你正在使用非常旧的Selenium版本。

撰写回答