我试图用一个URL启动chrome浏览器,浏览器启动后,它什么也不做。
1分钟后我看到如下错误:
Unable to open browser with url: 'https://www.google.com' (Root cause: org.openqa.selenium.WebDriverException: unknown error: DevToolsActivePort file doesn't exist
(Driver info: chromedriver=2.39.562718 (9a2698cba08cf5a471a29d30c8b3e12becabb0e9),platform=Windows NT 10.0.15063 x86_64) (WARNING: The server did not provide any stacktrace information)
我的配置:
Chrome浏览器:66
ChromeBrowser: 2.39.56
又及,在Firefox中一切都很好
TL;DR:如果你使用VirtualBox共享文件夹,不要在那里创建Chrome配置文件!
我在Debian 10下遇到了这个错误,但在Ubuntu 18.04下没有发生。
在我的Selenium测试中,我想安装一个扩展,并使用以下Chrome选项:
chromeOptions.addArguments(
`load-extension=${this.extensionDir}`,
`user-data-dir=${this.profileDir}`,
`disable-gpu`,
`no-sandbox`,
`disable-setuid-sandbox`,
`disable-dev-shm-usage`,
);
问题是,我试图在一个非标准目录下创建一个Chrome配置文件,这是VirtualBox共享文件夹的一部分。尽管使用的是完全相同版本的Chrome和Chromedriver,但在Debian下却无法运行。
解决方案是在其他地方选择一个概要目录(例如~/chrome-profile)。
TL;DR:如果你使用VirtualBox共享文件夹,不要在那里创建Chrome配置文件!
我在Debian 10下遇到了这个错误,但在Ubuntu 18.04下没有发生。
在我的Selenium测试中,我想安装一个扩展,并使用以下Chrome选项:
chromeOptions.addArguments(
`load-extension=${this.extensionDir}`,
`user-data-dir=${this.profileDir}`,
`disable-gpu`,
`no-sandbox`,
`disable-setuid-sandbox`,
`disable-dev-shm-usage`,
);
问题是,我试图在一个非标准目录下创建一个Chrome配置文件,这是VirtualBox共享文件夹的一部分。尽管使用的是完全相同版本的Chrome和Chromedriver,但在Debian下却无法运行。
解决方案是在其他地方选择一个概要目录(例如~/chrome-profile)。
对于Ubuntu 20,它确实帮助我使用我的系统铬驱动程序,而不是下载的那个:
# chromium which
/snap/bin/chromium
driver = webdriver.Chrome('/snap/bin/chromium.chromedriver',
options=chrome_options)
对于下载的web驱动程序来说,它看起来需要远程调试端口——remote-debugging-port=9222来设置,就像其中一个答案(由Soheil Pourbafrani):
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--remote-debugging-port=9222")
driver = webdriver.Chrome('<path_to>/chromedriver', options=chrome_options)
我使用铬,但我已经创建了一个shell脚本称为铬,只是为了便于我从dmenu打开浏览器。
#!/bin/bash
/usr/bin/chromium
Chrome驱动程序在PATH中寻找Chrome并执行。结果我得到了同样的错误。
org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited normally.
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /home/s1n7ax/.local/share/s1n7ax/bin/chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 's1n7ax', ip: '127.0.1.16', os.name: 'Linux', os.arch: 'amd64', os.version: '5.4.70-1-lts', java.version: '11.0.8'
Driver info: driver.version: ChromeDriver
remote stacktrace: #0 0x56030c96dd99 <unknown>
我只是删除了shell脚本,并添加了一个到chromium的软链接。现在一切正常。