seleniumで「NoSuchDriverException...Unable to locate or obtain driver for chrome;」エラー
久しぶりにコード動かすといつもエラーになる...。
エラー
selenium.common.exceptions.NoSuchDriverException: Message: Unable to locate or obtain driver for chrome; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
解決した方法
とりあえずエラーメッセージに書いてあるURLには飛ばない
代わりに https://googlechromelabs.github.io/chrome-for-testing/#stable (opens new window)にアクセスする。
stableを選んで、各環境の chromedriver
をダウンロードする。
あとはzipを解凍してpathを指定する。
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
service = Service(
executable_path=r"/Users/tarou/Downloads/chromedriver-mac-x64/chromedriver"
)
options = webdriver.ChromeOptions()
options.add_argument("--headless")
options.add_argument("--no-sandbox")
options.add_argument("--disable-dev-shm-usage")
driver = webdriver.Chrome(service=service, options=options)
エラーメッセージのページのドライバーは古いっぽい
114までのバージョンしかない。ちなみに現時点で最新は122
バージョンが古いとこんな感じのエラーになる
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 114
Current browser version is 122.0.6261.94 with binary path /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
以上。