覚え書きブログ

chromedriverのインストール

Python+seleniumでウェブページからのスクレイピングやキャプチャをするために、google chromeを用いる。
pythonからchromeの機能を使うためには、chromeのバージョンに合わせたドライバーが必要となる。

1)まず、インストールされているchromeのバージョンを確認

> google-chrome --version
Google Chrome 79.0.3945.88
||< 

79系のchromeが入っていることがわかる。

2)chromedriverのサイトにアクセスし、適切なバージョンのドライバーをダウンロード
[https://chromedriver.chromium.org/downloads]

今回は79系なので、以下にアクセスし、linux用のドライバーをダウンロードする。
[https://chromedriver.storage.googleapis.com/index.html?path=79.0.3945.36/]

3)zipファイルの解凍
ダウンロードしたchromedriver_linux64.zipを解凍する。
>|shell|
> unzip chromedriver_linux64.zip
> ls
chromedriver  chromedriver_linux64.zip

4)pythonで動作確認
seleniumインストールし、pythonインタラクティブモードで起動する。

> pip install selenium

以下は、www.google.comにアクセスして、画面のキャプチャを画像に保存する動作確認用のコードである。

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
options.add_argument('--window-size=1280,1024')

driver = webdriver.Chrome('./chromedriver',options=options)
driver.get('http://www.google.com')
driver.save_screenshot('test.png')

「webdriver.Chrome('./chromedriver',options=options)」の「'./chromedriver'」にはインストールしたドライバーのパスを書く。

実行し、以下のような画像が保存されていれば動作確認完了。
f:id:hirotaka_hachiya:20200304151646p:plain