Chrome 驱动程序 - 不再能够使用由 selenium 打开的 Web 驱动程序会话的 DevTools api

Chrome Driver - no longer able to use DevTools api of a web driver session opened by selenium

我无法再使用 DevTools 远程调试端口 api 从由 selenium + chrome 驱动程序启动的 chrome 驱动程序实例调用。

以前我们可以使用 chrome-remote-interface 的开发工具端口。

现在,当我使用 chrome-remote-interface 时,selenium webdriver 似乎无法使用。

例如,假设我:

driver = new ChromeDriver()

然后我这样做是为了访问一个站点:

driver.get("https://some-site.com")

到目前为止一切顺利。

然后我也使用remote-debugging-port来请求

参见:https://github.com/cyrus-and/chrome-remote-interface 示例。

这也有效。

现在我再次尝试使用 Java 网络驱动程序:

driver.get("https://some-site.com")

我得到一个错误:

[1651087065.452][INFO]: Done waiting for pending navigations. Status: timeout: Timed out receiving message from renderer: 0.000
[1651087065.452][INFO]: [4ac1553138574d061b37a45836c35096] RESPONSE GetCookies ERROR timeout: Timed out receiving message from renderer: 0.000
  (Session info: chrome=100.0.4896.127)
[126480:126508:0427/141746.195721:ERROR:cast_crl.cc(391)] CRL - Verification failed.

我创建了一个问题跟踪器:https://bugs.chromium.org/p/chromium/issues/detail?id=1320455&q=reporter%3Ame&can=2

有人知道解决这个问题的方法吗?

您不再需要使用 chrome-remote-interface 访问 chrome 调试端口。您现在可以使用 Selenium 4 的新 ChromeDriver 开发工具 SDK 通过 CDP 针对 chrome 执行命令。

切换到此解决了问题。