Selenium関連の記事はググったらたくさん出てくるが、seleniumとwebdriverはバージョンの縛りが非常に厳しいらしく、インストールしても全く動かない。
苦戦すること2時間、やっと動かせるようになったので、失敗した時のパターンと成功パターンを書いておきます。これからseleniumでChromeを操作しようとする人の参考になれば幸いです。
#失敗パターン
pythonを動かす時はGoogle colaboratoryやjupyter notebookを使っていたので、seleniumも同じように動かせるだろうと思っていた。
こんな感じで、seleniumのインストールやimportは特に問題なくできる。
しかしながら、webdriverを動かそうとしたら、エラーが出てしまう。
いろいろと試行錯誤して、以下のような手順を踏んだところ、うまくChromeを立ち上げることができたので、備忘録としてメモしておく。
Chromeに合ったバージョンのwebdriverをインストールしよう。
choromeのバージョンは、リンゴマークの隣[Chrome]の「Google Chromeについて」をクリックすれば、別ウィンドウが開きバージョンを表示してくれる。
私の場合は、バージョン71であったが開いた途端に自動更新が始まり、バージョン72になった。
バージョンを確認したら、以下のページからダウンロードする。バージョン72だったので、上から二つ目のやつです。
https://sites.google.com/a/chromium.org/chromedriver/downloads
ダウンロードできたら、解凍してダブルクリックすると、ターミナルが開いて、こんな画面が表示される。
seleniumをインストールしよう。
ターミナルを新しく開き、pip使ってインストールできる。
$ pip install selenium
※pipを使ったインストールは、jupyter notebook上でもできたっぽい。
※何やらpipのバージョンが古いみたいな表示が出たので、素直にpipをアップデートした(これが成功の理由であったかは不明。まあ新しいに越したことはないだろう)
##Chromedriverをインストールしよう
たぶん、chromedriverがインストールできてなかったことが、エラーの原因かと思われる。
参考にしたページだとbrewを使ってchromedriverをインストールする、とあったので、これに従ってchromedriverをインストールしようとした。
$ brew install chromedriver
エラー内容を読むと、「brew tap homebrew/cask」と「brew cask install chromedriver」を入力したら良いっぽい(意味はわかりません)
なので、まずは
$ brew tap homebrew/cask
次に
brew cask install chromedriver
を入力。
するとこんな感じで、うまくインストールされたっぽい。かんぱーい
で、もう一回jupyter notebook上でseleniumのインポートとwebdriverを実行すると、Chromeが立ち上がりました。