77Lifeworkベータ版

77Lifeworkベータ版

IT関係の話(ツール開発・インフラ構築)をメインとして、その他私の趣味や雑記用のブログです。ここに書いた内容が少しでも参考になれば嬉しいです。

PythonでWebスクレイピング:Selenium動作環境設定

はじめに

今回はPythonスクレイピングをする際に使用するSeleniumのインストール方法を説明します。

この記事で前提としている環境は以下です。

CentOS 7.6(1810)
Python 3.6.8
Google Chrome 77.0.3865.90

まず、PythonでWebページをスクレイピングをする場合には、requestsパッケージを用いて対象のURLにアクセスしてページの内容を取得する方法があります。
しかし、スクレイピング対象のページがjavascript等を使用しており、これが一通り動作した後の状態をスクレイピングしたい場合にはseleniumが必要となってきます。
seleniumは自動で実際のWebブラウザを起動させて対象のURLにアクセスするため、ブラウザ上で表示されたページをそのままスクレイピングし、取得することができます。

Seleniumのインストール

すでにPythonがインストールされている場合は、OSにログインし、ターミナルで以下のコマンドを実行するだけでOKです。

pip install selenium

環境によってはPython3.x.xのパッケージはpip3で管理する、という場合もあるので、pipが通らなかったら下のコマンドも試してみてください。

pip3 install selenium


Successfully installed ・・・・ と表示されていれば大丈夫です。
f:id:J-back:20191005000018p:plain:w600



そもそもまだPython設定できてないよ・・・って方は以下の記事を参考にしてみてください。
www.77-lifework.com


ちなみに、CentOSインストールってどうやんの?って方は、以下をご覧ください。
www.77-lifework.com

chromedriverのインストール

ここではスクレイピングの際にGoogle Chromeを使用する想定ですので、
ブラウザを制御するためのプログラムであるchromedriverをインストールする必要があります。

pipコマンドでインストールすることもできるようですが、今回は実行形式になっているプログラムをダウンロードする方法を紹介します。

まず、以下のサイトにアクセスします。
chromedriver.chromium.org


現在CentOS上にインストールされているGoogle Chromeのバージョンに適応するChomeDriverを選択します。

今回の記事では、Google Chrome 77 ですので、これに対応するChromeDriverを選択しましょう。
f:id:J-back:20191005003200p:plain:w600

OSはCentOSなので、Linux用を選択しましょう。クリックするとダウンロードが始まります。
f:id:J-back:20191005003403p:plain:w600


ダウンロードしたchromedriverをCentOSに配置しましょう。
ここではpathが通っている「/bin」に配置しました。
f:id:J-back:20191005005325p:plain:w600


これでchromedriverのインストールはOKです。

最後に

以上でスクレイピングに必要なSeleniumとchromedriverのインストールができました。
これでjavascriptなどを使用した動きのあるページに対してもスクレイピングができるようになりますね。

最後までお読みいただき、ありがとうございました。