java - Java - Selenium - 无法找到 CDP 版本 94 的完全匹配,因此返回找到的最接近的版本:93
问题描述
我是 Selenium 的新手,在运行我的代码时遇到关于 CDP 版本的错误。这是我的代码。这很简单,旨在登录到某个网页。驱动程序打开,填写电子邮件和密码,但到达按钮时,驱动程序关闭。即使我在按钮后设置另一个等待十分钟。
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","path/to/my/chromedriver");
WebDriver driver = new ChromeDriver();
WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
try {
driver.get("https://someweb.com/");
driver.findElement(By.name("Email")).sendKeys("anemail@email.com");
driver.findElement(By.name("Password")).sendKeys("randomPass");
driver.findElement(By.xpath("//*[@id=\"login-form\"]/button")).sendKeys(Keys.ENTER);
} finally {
driver.quit();
}
}
我在日志中收到以下警告
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.
Starting ChromeDriver 94.0.4606.61 (418b78f5838ed0b1c69bb4e51ea0252171854915-refs/branch-heads/4606@{#1204}) on port 44814
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
oct 06, 2021 9:45:02 AM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
oct 06, 2021 9:45:02 AM org.openqa.selenium.devtools.CdpVersionFinder findNearestMatch
WARNING: Unable to find an exact match for CDP version 94, so returning the closest version found: 93
oct 06, 2021 9:45:02 AM org.openqa.selenium.devtools.CdpVersionFinder findNearestMatch
INFO: Found CDP implementation for version 94 of 93
Process finished with exit code 0
我的 pom 中有以下依赖项
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.0.0-rc-1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>4.0.0-rc-1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-devtools</artifactId>
<version>4.0.0-rc-1</version>
</dependency>
</dependencies>
我不知道为什么司机突然离开。Chrome 和 ChromeDriver 版本是 94.0.4606.61。提前致谢!
解决方案
根据Selenium
文档,
- 版本
v4.0.0-rc-1
支持CDP
版本:85
,92
,93
.
但是您使用的是and的94
版本。所以请将您的依赖项更新到最新版本
Chrome
ChromeDriver
v4.0.0-rc-2
依赖:
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.0.0-rc-2</version>
</dependency>
参考:https ://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG
推荐阅读
- javascript - 单击切换按钮时,折叠菜单未关闭
- spark-cassandra-connector - java.lang.ClassCastException:com.datastax.driver.core.DefaultResultSetFuture 无法转换为 shade.com.datastax
- r - 使用来自某些变量的多个参数压缩数据框
- elasticsearch - 如何使用 C# NEST HighLevel 在 elasticsearch 中过滤多个文件和值?
- c# - 本地时间特定单元测试失败
- c++ - 推导返回类型
- asp.net-mvc - AccessToken 不得长于 4K
- docker - 如何启动多个 celery 进程/队列并在容器关闭时优雅地关闭它们?
- java - 从 http 链接映射 http 参数
- swift - 通过从另一个结构排序来快速排序结构