java - 从渲染器接收消息超时

标签 java selenium google-chrome webdriver selenium-chromedriver

我正在尝试从某些门户网站获取交易状态,并且我在我的 java 应用程序中使用以下 chrome 设置,并且我得到了

Timed out receiving message from renderer: 60.000

并且所有待处理的事务都超时。

session 信息: headless chrome=68.0.3440.75
驱动程序信息:chromedriver=2.38 (0)
platform=Linux 2.6.32-696.23.1.el6.x86_64 x86_64)

我该如何处理这个问题,如果发生超时,然后转到下一个事务?

我已经尝试了以下语句的所有排列和组合,但仍然不起作用;

options.addArguments("headless");
options.addArguments("disable-gpu");
WebDriver driver = new ChromeDriver(caps);
TimeUnit.SECONDS.sleep(1);
driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);
driver.manage().timeouts().implicitlyWait(20,TimeUnit.SECONDS);

最佳答案

此错误消息...

Timed out receiving message from renderer: 60.000

...意味着 ChromeDriver 无法启动/生成新的 WebBrowser,即 Chrome 浏览器 session 。

您的主要问题是您使用的二进制文件版本之间不兼容,如下所示:

  • 您正在使用 chromedriver=2.38
  • chromedriver=2.38 的发行说明明确提到以下内容:

Supports Chrome v65-67

Supports Chrome v67-69

  • 我们不知道您的Selenium 客户端版本。
  • 我们不知道您的JDK 版本

因此,ChromeDriver v2.38Chrome 浏览器 v68.0 之间存在明显的不匹配

解决方案

关于java - 从渲染器接收消息超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52017854/

相关文章:

java - 尝试以嵌入式模式启动 BrowserMobProxyServer 时发生 JNI 错误(Java、Maven)

java - 方法重载 toString()

java - JSF 中无法实例化类错误,由 NullPointerException 引起

java - 为什么我在测试中收到 NullPointerException?

javascript - 尝试将 Chrome Javascript 扩展移植到 Safari

google-chrome - Casperjs/PhantomJs 与 Selenium

javascript - Chrome 的 JavaScript 控制台在评估对象方面是否懒惰?

java - ImageIcon 方法不适用于所有图像

java - 从 Spring Boot RestController 使用多个服务时获取 ClassCastException

java - Selenium:获取元素的工具提示?