2017-10-20 96 views
0

我正嘗試使用現有的用戶配置文件打開Chrome瀏覽器窗口。無法在Selenium中使用用戶配置文件啓動Chrome瀏覽器

String dir= "/Users/labuser/Library/Application Support/Google/Chrome";   
    ChromeOptions options = new ChromeOptions(); 
    options.addArguments("--user-data-dir="+dir); 
    driver = new ChromeDriver(options); // throws an exception! 

我通過看chrome://version頁面證實了user directory path。 (下圖)

enter image description here

由於某種原因,這種代碼投用非常少的信息異常

org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited abnormally 
    (Driver info: chromedriver=2.33.506106 (8a06c39c4582fbfbab6966dbb1c38a9173bfb1a2),platform=Mac OS X 10.12.6 x86_64) (WARNING: The server did not provide any stacktrace information) 
Command duration or timeout: 60.33 seconds 
Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 17:00:58' 
System info: host: 'arustagi-wx-3', ip: '10.41.25.35', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12.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:148) 

編輯

我使用下面的Chrome瀏覽器,這屬於支持的瀏覽器範圍內

Version 61.0.3163.100 

回答

0

終於搞定了。我正在研究macOS,發現我需要徹底退出瀏覽器。

關閉瀏覽器窗口後,我不得不右鍵單擊停靠欄上的圖標,然後按退出。在此之後,硒腳本將很好地工作。

1

您正在使用最新版本的ChromeDriver

chromedriver=2.33.506106 

2.53。你應該使用latest release

無論如何,你的瀏覽器版本是什麼? Here你可以看看支持哪些瀏覽器版本(基於你的chromedriver)。

編輯

我試着用:

  • 硒3.5.3
  • ChromeDriver v2.33
  • 谷歌的Chrome版本62.0.3202.62(正式版本)(64位)

chrome://version/,我的配置文件路徑是

/Volumes/MacintoshSSD/Users/DurdenP/Library/Application Support/Google/Chrome/Default 

試圖

String chromeDriver ="pathTo/ChromeDriver/chromedriver"; 
    System.setProperty("webdriver.chrome.driver", chromeDriver); 
    ChromeOptions options = new ChromeOptions(); 
    String dir= "/Volumes/MacintoshSSD/Users/DurdenP/Library/Application Support/Google/Chrome"; 
    options.addArguments("user-data-dir="+dir); 
    ChromeDriver driver = new ChromeDriver(options); 

它的工作原理。

+0

我試着與版本3.6.0相同,而不是2.53。有同樣的例外。 –

+0

我檢查了我的瀏覽器版本 - 61.0.3163.100,它屬於支持範圍 –

+0

@AnkitRustagi我剛剛編輯了答案。我希望可以幫助你。 –

相關問題