【问题标题】:Unable to launch chrome from selenium, while using MAC system使用 MAC 系统时无法从 selenium 启动 chrome
【发布时间】:2018-02-13 06:32:50
【问题描述】:

MAC:10.11.6, Selenium:2.53(也尝试使用 3.4 和 3.8)& Java 1.8

已尝试驱动程序设置:

String exePath ="/usr/local/Cellar/chromedriver/2.35/bin/chromedriver";
System.setProperty("webdriver.chrome.driver", exePath);
WebDriver driver = new ChromeDriver();
driver = new ChromeDriver(options);

错误堆栈跟踪:

Starting ChromeDriver 2.35.528157 (4429ca2590d6988c0745c24c8858745aaaec01ef) on port 14988
Only local connections are allowed.
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: session not created exception
from disconnected: unable to connect to renderer
  (Session info: chrome=64.0.3282.140)
  (Driver info: chromedriver=2.35.528157 (4429ca2590d6988c0745c24c8858745aaaec01ef),platform=Mac OS X 10.11.6 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 2.55 seconds
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:32:46'
System info: host: '01hw382197', ip: '172.25.155.171', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.6', java.version: '1.8.0_111'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:249)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:144)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:170)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:159)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:116)
    at dataAndConfig.DriverClass.getDriver(DriverClass.java:39)
    at scriptsPostPaidWebApp.BillingPayNow.main(BillingPayNow.java:27)

【问题讨论】:

标签: java google-chrome selenium selenium-webdriver selenium-chromedriver


【解决方案1】:

查看以下链接:

  1. https://github.com/SeleniumHQ/selenium/issues/4897
  2. WebDriverError: disconnected: unable to connect to renderer
  3. https://github.com/SeleniumHQ/selenium/issues/4979

首先,您应该确保您的 ChromeDriver 支持您的 Chrome 版本。由于您使用的是 ChromeDriver 2.3.5 和 Google Chrome v64,您应该没问题。 (您可能仍想升级您的 Selenium 版本)

根据上面发布的链接,您需要注释掉以任何方式操纵浏览器窗​​口大小的每个方法。例如setMaximize().

如果这不起作用,您可能想试试options.addArguments("no-sandbox");

【讨论】:

  • 感谢 Angry,但它仍然不适合我,我尝试将我的 selenium 版本更新到 3.4、3.5、3.8,但它根本不适合我。请指教。我没有使用任何 setMaximize()。同样的代码在我的windows系统中也可以正常工作唯一的变化是,在我的windows中我有chrome v63,所以你能帮我如何在mac中降级chrome,因为我尝试安装v63的dmg,但它会自动更新
  • 嘿,很遗憾听到我的解决方案都没有奏效。我以前从未使用过 MAC,但是通过快速的 google 查询找到了这个很有前途的教程:support.imonggo.com/help/kb/advance-questions/…
  • 我现在不知道在这种情况下该怎么办,我已将 chrome 版本降至 60,将 chromedriver 降至 2.33,但仍然无法正常工作
  • 今天我观察到它的一个新版本:当我用 WIFI 连接我的系统时,我能够以相同的配置运行脚本,但是当我连接我的 LAN 时它不起作用。
  • 请大家帮忙
猜你喜欢
  • 1970-01-01
  • 2017-11-03
  • 1970-01-01
  • 2016-12-02
  • 1970-01-01
  • 2011-09-19
  • 1970-01-01
  • 2015-02-27
  • 1970-01-01
相关资源
最近更新 更多