Posted at

[selenium向け] ChromeDriverをpipでインストールする方法(パス通し不要、バージョン指定可能)


はじめに

Pythonでseleniumを使いChromeを操作する際にはChromeDriverのインストールが必要です。

通常ChromeDriverをインストールする際にはバイナリを直接ダウンロードしてインストールしますが、ここではpipコマンドでインストールする方法を記載しています。

pipでインストールするとパスを通す必要がなくなります。

普通にpip install chromedriver-binaryコマンドでインストールすると、ChromeとChromeDriverの互換性の問題でseleniumが使えないことが多々ありますが、バージョン指定の方法も記載しております。


手順


seleniumインストール

pip install selenium

Jupyter-notebookで実行する際には以下のように、先頭に「!」をつけてください。

!pip install selenium

以下のように「Successfully」と表示されればインストールは成功です。


Chromeのバージョン確認

「設定→ヘルプ→Google Chromeについて」を開くとバージョンが表示されます。


ChromeDriverのインストール

まずpip install chromedriver-binary==<Chromeバージョン番号> として実行してください。

私の場合はChromeバージョン番号は「76.0.3809.132」でしたので、以下のコマンドを実行します。

pip install chromedriver-binary==76.0.3809.132

Jupyter-notebookで実行する際には以下のように、先頭に「!」をつけてください。

!pip install chromedriver-binary==76.0.3809.132

たぶん以下のようなエラーが表示されると思います。

もしエラーが出なかった場合は「動作確認」の項目に進んでください。


エラー内容の確認と、ChromeDriverを再度インストール

このエラー内に表示されているバージョン番号は、存在するChromeDriverのバージョン番号です。

Chromeのバージョン番号と、ChromeDriverのバージョン番号を比較してください。

きっと同じバージョン番号はないと思います。

そこで、Chromeのバージョンより少し小さい数値のChromeDriverのバージョン番号を探してください。

私の場合はChromeバージョンが「76.0.3809.132」で、それより少し小さい数値のChromeDriverバージョンは「76.0.3809.126.0」がありました。

その後、そのChromeDriverのバージョン番号を用いて、再度以下のコマンドを実行してください。

pip install chromedriver-binary==76.0.3809.126.0

Jupyter-notebookで実行する際には以下のように、先頭に「!」をつけてください。

!pip install chromedriver-binary==76.0.3809.126.0

以下のように「Successfully」と表示されればインストールは成功です。


動作確認

以下のコマンドを実行してください。

from selenium import webdriver

import chromedriver_binary
driver = webdriver.Chrome()

以下の画面が表示された場合は「アクセスを許可する」をクリックしてください。

その後、以下のようにChromeブラウザが表示されれば成功です。