Java - Selenium - 无法找到与 CDP 版本 94 完全匹配的版本,因此返回找到的最接近的版本 : 93

标签 java selenium selenium-webdriver selenium-chromedriver

我是 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.

但是您使用的是 94 版本的 ChromeChromeDriver。所以请将您的依赖项更新到最新版本 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

关于Java - Selenium - 无法找到与 CDP 版本 94 完全匹配的版本,因此返回找到的最接近的版本 : 93,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69466279/

相关文章:

java - grails 中的 Google map 插件

java - 具有重复键的多映射按它们在给定多映射中出现的顺序排序

java - 当 Camel 从 XML 文件加载路由时,在注册表中找不到 Bean

java - WebDriver 中不支持复合类名错误

java - WebDriver for Firefox : browser starts w/empty page, 挂起 2 分钟,重新启动,然后测试运行。为什么?

google-chrome - 适用于 ChromeDriver 和 Chrome 浏览器的 Selenium 以及日志消息 "Only local connections are allowed"

java - Java中如何覆盖子类中Super对象的某个字段?

internet-explorer - 通过在 webdriver/protractor 中传递参数来关闭 Internet Explorer 上的自动更正?

ruby-on-rails - 当页面加载时间过长时,如何停止页面加载并关闭 Ruby Watir 中的浏览器?

java - 在 webelement 上获取 NoSuchElementException (找到相同的 webelement,但有时我得到异常)