Python Windows身份验证用户名和密码无效

Python Windows身份验证用户名和密码无效,python,selenium,selenium-webdriver,windows-authentication,basic-authentication,Python,Selenium,Selenium Webdriver,Windows Authentication,Basic Authentication,我试图在提示符中输入数据(给出URL),下面的代码给了我一个错误。请帮我弄一下这些 from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.keys import Keys import time driver = webdriver.Firefox() url = "http://the-inter

我试图在提示符中输入数据(给出URL),下面的代码给了我一个错误。请帮我弄一下这些

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Firefox()
url = "http://the-internet.herokuapp.com/basic_auth"
driver.get(url)
time.sleep(5)
alert = driver.switch_to.alert
alert.authenticate('admin','admin')
time.sleep(4)
alert.accept()
我试过:

ActionChains(driver).send_keys("admin").send_keys(Keys.TAB).send_keys("admin").perform()

这一个也不起作用。

当您使用Selenium 3.4.0时,
geckodriver v0.18.0
Mozilla Firefox 53.0
通过
Python 3.6.1
您可以通过在
url
本身中嵌入
用户名和
密码来绕过
基本身份验证弹出窗口,如下所示

此解决方案打开
URL
,并使用有效的
用户名
密码
凭据进行身份验证

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('C:\\Program Files\\Mozilla Firefox\\firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary, executable_path="C:\\Utility\\BrowserDrivers\\geckodriver.exe")
driver.get("http://admin:admin@the-internet.herokuapp.com/basic_auth")

当您使用Selenium 3.4.0时,geckodriver v0.18.0,
Mozilla Firefox 53.0
通过
Python 3.6.1
您可以通过在
url
本身中嵌入
用户名和
密码来绕过
基本身份验证弹出窗口,如下所示

此解决方案打开
URL
,并使用有效的
用户名
密码
凭据进行身份验证

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('C:\\Program Files\\Mozilla Firefox\\firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary, executable_path="C:\\Utility\\BrowserDrivers\\geckodriver.exe")
driver.get("http://admin:admin@the-internet.herokuapp.com/basic_auth")
上述代码也已正确使用:)


上面的代码也正常工作:)

不确定这是否是您的问题,但我看到的第一件事是您忘记了alert=driver中的“()”。切换到.alert()已尝试:
alert=driver。切换到.alert()TypeError:“alert”对象不可调用
不确定这是否是您的问题,但我看到的第一件事是您忘记了“()”在alert=driver.switch_to.alert()中尝试:
alert=driver.switch_to.alert()TypeError:“Alert”对象不可调用
FWIW:嵌入的凭据将仅部分使用chrome v59+工作,因为子资源请求将被阻止。FWIW:嵌入的凭据将仅部分使用chrome v59+工作,因为子资源请求将被阻止。上述代码现在是否工作?我发现同样一段对我来说运行良好的代码现在不起作用了。我问了一个同样的问题,上面的代码现在工作了吗?我发现同样一段对我来说运行良好的代码现在不起作用了。我在这里问了同样的问题