こちらの記事は次のようなことを知りたいという方に向けて書いています。
- pythonでスクレイピングをしたいけど、準備に必要なことは?
- スクレイピングをするにはChromeDriverとseleniumが必要と言われたけど何?
- ChromeDriverとseleniumの導入方法を教えて!
今回は、python初心者に向けて、スクレイピングをするには必須となるChromeDriverとseleniumの導入方法をご説明しますね。
スクレイピングの準備
pythonでスクレイピングを準備するには、以下の準備をしておく必要があります。
pythonのインストール
まずはpythonのプログラムをインストールする必要があります。
もし、インストールされていない場合、手順は以下の記事で手順を詳しく書いていますのでこちらでご確認ください。
スクレイピングをおこなう場合は、自分のPCにインストールする必要があります。
仮想環境のセットアップ
pythonを使っていくのであれば、仮想環境をセットアップしておいた方がいいです。
理由は、各プログラム間の干渉が内容にするためです。
こちらの記事で詳細を説明しています。
ChromeDriverとseleniumの導入
スクレイピングは、Webサイトを開いて、その中にあるHTMLタグなどから必要な情報を特定して、その情報を記録していく手法です。
そのためには、Webサイトを開いて自動で動かしていく技術が必要となります。これを簡単に実現できるのがChromeDriverとseleniumです。
もしこれらがない場合、相当複雑なプログラムを書かなければWebサイトを遷移させていくことは難しいです。
seleniumの導入方法
pythonでスクレイピングをする場合、requestsライブラリを利用して、簡単にWebサイトからデータを自動的に取得することができます。
ですがスクレイピングをしたいデータの対象によっては、ユーザIDやパスワードを入れてログイン認証しなければならない場合や、ボタンを押して次のデータを読み込みに行かなければならない場合があります。
そうした動的なWebサイトの制御に必要なライブラリがseleniumです。
seleniumの導入は非常に簡単です。
コマンドプロンプトで以下のコマンドを実行すればインストールが始まります。
1 | (環境名)>pip install selenium |
これでseleniumの導入は完了です。
ChromeDriverの導入方法
ChromeDriverのダウンロード
ChromeDriverを使用するには、WebブラウザとしてChromeがインストールされていることが必須です。
Chromeのダウンロードについてはこちらのサイトで可能です。
Google Chromeダウンロードページ
また、インストール方法は以下のサイトをご参照ください。
Google Chrome をダウンロードしてインストールする
まず最初に、Chromeのバージョンを確認します。
Chromeを開いて右上のメニュー(点が縦に3つ並んでいるアイコン)→ヘルプ→Google Chromeについてをクリックします。
Google Chrome は最新版ですの表示の下にある、バージョンの数字の頭2桁をメモします。下の例の場合は88ですね。
次に、下のリンクを開いてChromeDriverをダウンロードします。
ファイルダウンロード:ChromeDriver – WebDriver for Chrome
Current Releasesの部分で、先ほどメモしたChromeのバージョンと同じ数字のリンクをクリックします。もしその数字が見当たらない場合は、スクロールして同じバージョンの数字のリンクを探してください。
使用しているOSに合ったファイルをクリックしてダウンロードします。
なお、Windowsであれば32bitでも64bitでもchromedriver_win32.zipで大丈夫です。
ChromeDriverの保存
先ほどダウンロードしたzipファイルを解凍すると、chromedriver.exeファイルが出てきます。
これを、Pythonフォルダの下に保存します、
これで、ChromeDriverを使用する準備はできました。
ChromeDriverのテスト
ChromeDriverが使えるかどうか、テストしてみましょう。
簡単ですが、以下のコードを実行してみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 | from selenium import webdriver import os def ChromeDriverTest(): driver = webdriver.Chrome() driver.get('https://www.yahoo.co.jp/') # chromedriver起動待ちを3秒似設定 time.sleep(3) ChromeDriverTest() |
コマンドプロンプトでpythonをの仮想環境を起動します。
上のプログラムを実行します。すると、以下のような表示が出て、
Chromeが立ち上がって、Yahooのホームページが開きました。
「Chromeは自動テストソフトウェアによって制御されています。」という表示がChromeDriverで開かれた証です。
これでスクレイピングの準備はできました。自動化でいろいろな作業を便利にしていきましょう!
ここまでお読みいただきましてありがとうございました。