io.github.bonigarcia.wdm.WebDriverManagerException:检测到响应错误:HTTP / 1.1 403使用WebDriverManager和FireFox禁止的错误

问题描述 投票:0回答:1

我正在Firefox中运行Selenium自动化代码,并收到以下错误:io.github.bonigarcia.wdm.WebDriverManagerException: A response error is detected: HTTP/1.1 403 Forbidden

在Chrome浏览器中可以正常工作。

FireFox版本:70.0.1(64位)

OS:Mac OS

selenium selenium-webdriver firefox selenium-firefoxdriver webdriver-manager
1个回答
0
投票
此错误消息...

io.github.bonigarcia.wdm.WebDriverManagerException: A response error is detected: HTTP/1.1 403 Forbidden

...已观察到某些托管在GitHub上的二进制文件(适用于Opera和Firefox)。


根据WebDriverManagerException: A response error is detected: HTTP/1.1 403 Forbidden中的讨论,Boni García将此问题称为webdrivermanager中的已知问题。

Known issues部分中记录了以下内容:

某些二进制文件(适用于Opera和Firefox)托管在GitHub上。当WebDriverManager发出多个连续请求时,GitHub服务器将返回HTTP 403错误响应,如下所示:

Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: https://api.github.com/repos/operasoftware/operachromiumdriver/releases at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1840) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254) at io.github.bonigarcia.wdm.BrowserManager.openGitHubConnection(BrowserManager.java:463) at io.github.bonigarcia.wdm.OperaDriverManager.getDrivers(OperaDriverManager.java:55) at io.github.bonigarcia.wdm.BrowserManager.manage(BrowserManager.java:168)

还有一段时间:

Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: https://api.github.com/repos/mozilla/geckodriver/releases at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1840) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254) at io.github.bonigarcia.wdm.FirefoxDriverManager.getDrivers(FirefoxDriverManager.java:61) at io.github.bonigarcia.wdm.BrowserManager.manage(BrowserManager.java:163)


可以通过发送经过身份验证的请求来解决此问题。该过程如下:

    在您的GitHub帐户中创建一个令牌/秘密对。
  1. 告诉WebDriverManager此对令牌/秘密的值。为此,您应该使用配置键wdm.gitHubTokenNamewdm.gitHubTokenSecret。您可以将它们作为命令行Java参数传递,如下所示:

    -Dwdm.gitHubTokenName=<your-token-name> -Dwdm.gitHubTokenSecret=<your-token-secret>

...或作为环境变量(例如在Travis CI中),如下所示:

WDM_GITHUBTOKENNAME=<your-token-name> WDM_GITHUBTOKENSECRET=<your-token-secret>

© www.soinside.com 2019 - 2024. All rights reserved.