【发布时间】:2017-11-06 17:14:36
【问题描述】:
由于这个问题,我被困了好几天,似乎找不到解决方案。无论我做什么,我都无法让 chromedriver 在我的机器上工作。我已经尝试了几乎所有我能想象到的设置。列举几个:
- Chrome 64 位,Python 64 位
- Chrome 32 位,Python 32 位
- Chrome 64 位,Python 32 位
- Chrome 32 位,Python 64 位
我还尝试了不同版本的 Chrome 及其相应的 chromedriver 版本。我已经尝试过不同的 selenium 早期版本,也就是说,在前面提到的每个设置上。
对于实际情况,这是我当前的设置:
- Windows 10 专业版 x64
- Python 3.6.3 64 位
- 硒 3.7.0
- 谷歌浏览器 62.0.3202.75 64 位
- Chromedriver 2.33
我不会发布我的代码,因为无论我使用哪个代码,它都会失败。即使是启动 chromedriver 的最简单最基本的代码也不起作用。此外,它适用于我同事的机器。因此,为了提供一些上下文,这是我尝试过的代码 sn-p 不起作用:
from selenium import webdriver
webdriver.Chrome(executable_path="bin/chromedriver.exe")
我还尝试将 chromedriver 添加到我的 PATH 并启动不带参数的 chromedriver,但这也不起作用。
我得到的错误是这个:
selenium.common.exceptions.WebDriverException: Message: unknown error: chrome failed to start
(Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 10.0.15063 x86_64)
如果我使用详细/日志记录参数启动驱动程序,则会生成以下日志:
[1.979][INFO]: COMMAND InitSession {
"capabilities": {
"alwaysMatch": {
"browserName": "chrome",
"goog:chromeOptions": {
"args": [ ],
"extensions": [ ]
},
"platformName": "any"
},
"firstMatch": [ {
} ]
},
"desiredCapabilities": {
"browserName": "chrome",
"goog:chromeOptions": {
"args": [ ],
"extensions": [ ]
},
"platform": "ANY",
"version": ""
}
}
[1.985][INFO]: Populating Preferences file: {
"alternate_error_pages": {
"enabled": false
},
"autofill": {
"enabled": false
},
"browser": {
"check_default_browser": false
},
"distribution": {
"import_bookmarks": false,
"import_history": false,
"import_search_engine": false,
"make_chrome_default_for_user": false,
"show_welcome_page": false,
"skip_first_run_ui": true
},
"dns_prefetching": {
"enabled": false
},
"profile": {
"content_settings": {
"pattern_pairs": {
"https://*,*": {
"media-stream": {
"audio": "Default",
"video": "Default"
}
}
}
},
"default_content_setting_values": {
"geolocation": 1
},
"default_content_settings": {
"geolocation": 1,
"mouselock": 1,
"notifications": 1,
"popups": 1,
"ppapi-broker": 1
},
"password_manager_enabled": false
},
"safebrowsing": {
"enabled": false
},
"search": {
"suggest_enabled": false
},
"translate": {
"enabled": false
}
}
[1.989][INFO]: Populating Local State file: {
"background_mode": {
"enabled": false
},
"ssl": {
"rev_checking": {
"enabled": false
}
}
}
[2.004][INFO]: Cannot switch to US keyboard layout - some keys may be interpreted incorrectly
[2.004][INFO]: Launching chrome: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-background-networking --disable-browser-side-navigation --disable-client-side-phishing-detection --disable-default-apps --disable-hang-monitor --disable-popup-blocking --disable-prompt-on-repost --disable-sync --disable-web-resources --enable-automation --enable-logging --force-fieldtrials=SiteIsolationExtensions/Control --ignore-certificate-errors --load-extension="C:\Users\OLIVIE~1.VER\AppData\Local\Temp\scoped_dir9668_31484\internal" --log-level=0 --metrics-recording-only --no-first-run --password-store=basic --remote-debugging-port=12606 --safebrowsing-disable-auto-update --test-type=webdriver --use-mock-keychain --user-data-dir="C:\Users\OLIVIE~1.VER\AppData\Local\Temp\scoped_dir9668_609" data:,
[2.035][INFO]: RESPONSE InitSession unknown error: chrome failed to start
[2.035][DEBUG]: Log type 'driver' lost 0 entries on destruction
[2.035][DEBUG]: Log type 'browser' lost 0 entries on destruction
我已经查看了我能找到的几乎所有类似的问题,例如 this one 和 this one,但我遇到的所有解决方案都没有帮助,我得到的总是同样的错误.我尝试过十几种不同的设置时遇到了同样的错误。
几个月前,我记得我在同一台机器上成功地为另一个项目运行了 chromedriver。
我想我已经提供了所有必要的信息,但如果我忘记了什么,请随时在 cmets 中问我。
谢谢
【问题讨论】:
-
硒版本是什么?
-
@DavidePatti 最新来自一个新鲜的
pip install,所以那将是selenium 3.7.0。我承认我还没有考虑过尝试其他版本的 selenium。 -
好吧,我试过 selenium
3.6.0和3.5.0每次还是一样的错误。 -
在错误中指出它正在启动
chrome.exe而不是chromedriver.exe... 这正常吗?我会期待chromedriver.exe。你确定你的exe路径是正确的吗?
标签: python selenium selenium-chromedriver