簡體   English   中英

org.openqa.selenium.WebDriverException:未知錯誤:chrome 無法通過 Java 開始使用 Selenium ChromeDriver 和 Chrome

[英]org.openqa.selenium.WebDriverException: unknown error: chrome failed to start using Selenium ChromeDriver and Chrome through Java

我試過用硒打開一個頁面。 我還進口了罐子。 但它不會起作用。

這是我的代碼:package org. 例子;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class Main {

    static String url = "link";

    public static void main(String[] args) {

        System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.get(url);
        System.out.println("Wait a bit for the page to render");
    }
}

我得到以下輸出:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[0.037][INFO]: received WebDriver reques: GET /saus 
[0.037][INFO]: sending WebDriver response: 200 {
   "sessionId": "",
   "saus": 0,
   "value": {
      "build": {
         "version": "alpha"
      },
      "os": {
         "arch": "x86_64",
         "name": "Windows NT",
         "version": "6.2"
      }
   }
}
[0.461][INFO]: received WebDriver reques: POST /session {
   "capabiliies": {
      "firsMach": [ {
         "browserName": "chrome",
         "goog:chromeOpions": {
            "args": [  ],
            "exensions": [  ]
         }
      } ]
   },
   "desiredCapabiliies": {
      "browserName": "chrome",
      "goog:chromeOpions": {
         "args": [  ],
         "exensions": [  ]
      }
   }
}
[0.462][INFO]: Launching chrome:  --ignore-cerificae-errors
[0.464][INFO]: sending WebDriver response: 200 {
   "sessionId": "",
   "saus": 13,
   "value": {
      "message": "unknown error: chrome failed o sar\n  (Driver info: chromedriver=2.0,plaform=Windows NT 6.2 x86_64)"
   }
}
[0.546][INFO]: received WebDriver reques: GET /shudown 
[0.546][INFO]: sending WebDriver response: 200 {
   "sessionId": "",
   "saus": 0,
   "value": null
}
Started ChromeDriver (v2.0) on port 54751
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:587)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:264)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:179)
    at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:101)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:81)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:49)
    at org.example.Main.main(Main.java:15)
Caused by: org.openqa.selenium.WebDriverException: unknown error: chrome failed to start
  (Driver info: chromedriver=2.0,platform=Windows NT 6.2 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 329 milliseconds
Build info: version: '4.3.0', revision: 'a4995e2c09*'
System info: host: '*************', ip: '************', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '18'
Driver info: driver.version: ChromeDriver
    at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:67)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:483)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:217)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:169)
    at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$errorHandler$0(JsonWireProtocolResponse.java:54)
    at org.openqa.selenium.remote.HandshakeResponse.lambda$getResponseFunction$0(HandshakeResponse.java:30)
    at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$3(ProtocolHandshake.java:151)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
    at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:1002)
    at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
    at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
    at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:153)
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:102)
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:67)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:156)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.invokeExecute(DriverCommandExecutor.java:167)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:142)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:569)
    ... 6 more

Process finished with exit code 1

如果有人可以幫助我,那就太好了! 希望有人能幫助我,我了解 Java,但我是 Selenium 的新手。 我已經在 eclips 中嘗試過,但我仍然無法正常工作。

此錯誤消息...

Caused by: org.openqa.selenium.WebDriverException: unknown error: chrome failed to start
  (Driver info: chromedriver=2.0,platform=Windows NT 6.2 x86_64) (WARNING: The server did not provide any stacktrace information)

...意味着ChromeDriver無法啟動/產生新的瀏覽上下文,即會話。

您的主要問題是您使用的二進制文件版本之間的不兼容

  • 您正在使用chrome=2.0這是old and Ancient

  • 可能您使用的是最新的chrome=103.0

所以chromedriver=91.0chrome=96.0.4664.45之間存在明顯的不匹配


解決方案

確保這件事:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM