错误:inspector_emulator_agent.cc(477) 在通过Selenium和ChromeDriver



我一直在将Selenium与Python(以及Chrome,带有chromedriver(一起使用,以成功地自动与网站进行交互,但是最近我的脚本停止工作。

我已将其缩小到脚本到达的一行,但随后就没有进一步了 - 然后就没有其他事情发生过。无论我等待多久,都不会给出任何错误。剧本就挂在那里。

台词是这样的:

start_text_area = driver.find_element_by_id('startDate')

经过一些搜索,我认为如果我尝试使用超时可能会有所帮助,所以我尝试了以下代码:

try:
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "startDate"))
)
finally:
driver.quit()

但这也有同样的结果:什么也没发生,尽管我等了一会儿。

正如我所说,这直到最近才起作用。我不知道我使用的网站是否发生了变化。

我还应该提到,当我启动网站时,我还会看到一个终端窗口,我看到其中有一条 chromedriver 错误消息。该错误消息是这样的:

[1022/123519.xxx:ERROR:inspector_emulator_agent.cc(477)] Can only enable virtual time for pages, not workers

知道是什么原因导致这种情况,或者我能做些什么吗?

此错误消息...

[1022/123519.xxx:ERROR:inspector_emulator_agent.cc(477)] Can only enable virtual time for pages, not workers

。是Chrome驱动程序和Chrome/Chromium使用的InspectorEmulationAgent::AssertPage()Response

该函数在 inspector_emulation_agent.cc 中定义为:

Response InspectorEmulationAgent::AssertPage() {
if (!web_local_frame_) {
LOG(ERROR) << "Can only enable virtual time for pages, not workers";
return Response::InvalidParams(
"Can only enable virtual time for pages, not workers");
}
return Response::OK();

当您通过ChromeOptions()实例--no-sandbox使用参数时,会出现此错误,如下所示:

options = webdriver.ChromeOptions() 
options.add_argument('--no-sandbox')

溶液

  • 删除参数--no-sandbox将解决问题。
  • 如果您使用的是Windows操作系统,则需要添加参数--disable-gpu如下所示:

    options = webdriver.ChromeOptions() 
    options.add_argument('--disable-gpu')
    

引用

  • Chrome 实例在量角器中运行测试用例后不会关闭

相关内容

  • 没有找到相关文章

最新更新