背景
selenium でタイムカード打刻を半自動化しているのですが、たまに下記のエラーを吐きます
This version of ChromeDriver only supports Chrome version 112 (Selenium::WebDriver::Error::SessionNotCreatedError) Current browser version is 114.0.5735.90 with binary path /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Chrome ブラウザのバージョンが更新されてしまい chromedriver のバージョンが合わない時になるエラー
chromedriver を更新すれば良いだけですが、毎回ググるのが面倒なので記事として残しておく(完全に自分用)
※ 自動更新が推奨ですが、自分のスクリプトの都合で一旦は手動更新の手順を記します。ゆくゆくは自動更新にしたい
手動更新手順
1. 必要なバージョンの chromedriver をダウンロード
下記からダウンロード出来ます
今回の例でいうとエラー文にある通り 114.0.5735.90
です
ダウンロードしたら解凍して、実行ファイル( chromedriver
)をダブルクリック
ターミナルが開き Successfully と出ていたらそのまま閉じます
2. chromedriver
を適切な場所に移動
先ほどダウンロードしたものを移動します
$ mv ~/Downloads/chromedriver_mac_arm64/chromedriver /usr/local/bin/chromedriver
これでエラーがなくなるはずです
あとがき
自分のタイムカード打刻スクリプトを修正して webdrivers
Gem を使って自動更新にする記事を書きたい
参考予定:
https://qiita.com/jnchito/items/f9c3be449fd164176efa