スクレイピング時に「This version of ChromeDriver only supports Chrome version ...」のエラーが出た時

Python, Programming09 November 2020

主にPythonでスクレイピングをした時に、

This version of ChromeDriver only supports Chrome version ...

のエラーが出た時の対処法です。

原因と対処

エラーメッセージ通りですが、使用しているChrome(ブラウザ)とスクレイピングで使用するドライバーのモジュール(chromedriver-binary)の対応バージョンの差によるエラーなので、ここのバージョンを合わせてあげればOKです。

方法としては以下のどちらか。

  • Chrome(ブラウザ)のバージョンをドライバーに合わせる
  • ドライバーのバージョンをChrome(ブラウザ)に合わせる

わざわざこのためだけにブラウザのバージョンを変えるのもどうかなという気がしますので、 基本的にはドライバーのバージョンを変える方が良いと思います。

対応バージョンを確認

以下のサイトから、ドライバーの対応バージョンが確認できます。

http://chromedriver.chromium.org/downloads

例えば、以下のバージョンの例をみてみると binary versions

対象 バージョン
ドライバー 78.0.3904.11
対応しているChrome(ブラウザ) 78

という見方になります。

ドライバーモジュール(chromedriver-binary)のバージョンを変更

確認ができたら、ドライバーモジュール(chromedriver-binary)のバージョンをpip(pipenvでも可)にてインストールし直します。

$ pip install chromedriver-binary=="インストールしたいバージョン"

これで再度実行すれば、エラーが出ずスクレイピングによるChrome起動が行えるはずです!