2

我寫了一個小腳本來加載我的默認Chrome配置文件並使用Selenium打開一個站點。但是,在chrome成功啓動後,代碼會暫停一段時間,然後崩潰。Chrome啓動後崩潰[Selenium] [Python]

我的腳本:

options = webdriver.ChromeOptions() 
    options.add_argument("--user-data-dir=C:\\Users\\hbur3\\AppData\\Local\\Google\\Chrome\\User Data") 
    options.add_argument("--start-maximized"); 
    wd = webdriver.Chrome(chrome_options=options) 
    wd.get("https://google.com.au/") 

Python的錯誤:

selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: crashed 
    (Driver info: chromedriver=2.27.440174 (e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Windows NT 10.0.14393 x86_64) 

Chromedriver登錄:

[2.638][INFO]: Launching chrome: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-background-networking --disable-client-side-phishing-detection --disable-default-apps --disable-hang-monitor --disable-infobars --disable-popup-blocking --disable-prompt-on-repost --disable-sync --disable-web-resources --enable-logging --ignore-certificate-errors --load-component-extension="C:\Users\hbur3\AppData\Local\Temp\scoped_dir21208_8173\internal" --log-level=0 --metrics-recording-only --no-first-run --password-store=basic --remote-debugging-port=12638 --safebrowsing-disable-auto-update --start-maximized --test-type=webdriver --use-mock-keychain --user-data-dir="C:\Users\hbur3\AppData\Local\Google\Chrome\User Data" 
    [2.641][DEBUG]: DevTools request: http://localhost:12638/json/version 
    [4.644][DEBUG]: DevTools request failed 
    [4.695][DEBUG]: DevTools request: http://localhost:12638/json/version 
    [4.896][DEBUG]: DevTools request failed 
    [4.946][DEBUG]: DevTools request: http://localhost:12638/json/version 
    [6.699][DEBUG]: DevTools request failed 
    [6.750][DEBUG]: DevTools request: http://localhost:12638/json/version 
    [6.950][DEBUG]: DevTools request failed 
     etc... 

我曾嘗試整體的解決方案,其中包括:

  • 重新安裝Chromedriver
  • 創建一個新的Chrome用戶個人資料
  • 其他地方複製的默認配置文件
  • 只有運行時沒有其他Chrome窗口被打開

我討厭刪除我的個人資料並重新安裝Chrome,但這可能是我唯一的解決方案。

回答

1

我認爲你需要做你害怕的事......看到這個answer。您可以export並導入您的配置文件以節省時間。

您可以嘗試的另一件事是啓動RemoteWebDriver而不是ChromeDriver。首先運行chromedriver.exe,然後連接到它:

from selenium import webdriver 
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 

driver = webdriver.Remote(
command_executor='http://localhost:9515/', 
desired_capabilities=DesiredCapabilities.CHROME) 

如果問題仍然reporduces,尋找一個開放issue或者是打開一個新的。

+0

固定!謝謝。 – Hugh

+0

不客氣,隨時歡迎! – Moshisho