从渲染器接收消息超时

4
我正在尝试从某个网站获取交易的状态,我在我的Java应用程序中使用以下Chrome设置,但是我收到了“Timed out receiving message from renderer: 60.000”的错误信息,并且所有未决交易都超时了。
会话信息: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);
1个回答

3

This error message...

Timed out receiving message from renderer: 60.000

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

您主要的问题在于以下二进制文件版本之间的不兼容性

支持 Chrome v65-67

支持 Chrome v67-69

  • 我们不知道您的 Selenium Client 版本。
  • 我们不知道您的 JDK版本

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

解决方案


我仍然遇到这个问题:ChromeDriver 2.42 jdk 1.8 selenium 3.14 chrome 69 - Jonathan
1
这个答案涉及两个不同的问题(另一个问题),但两次都导致提问者说这个解决方案不起作用。指出他们使用了错误的驱动程序/Chrome版本很好,但并没有解决问题。我也遇到了与兼容驱动程序和Chrome版本相同的问题。 - S.Will

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接