Pythonでスクレイピング(Selenium)
Seleniumを使ってPythonでスクレイピングする方法を調べてみたので軽くまとめた。
スクレイピングを始める前に
1.selenium
Webスクレイピングにはseleniumというものが必要でこれはブラウザを操作するものらしい。
Seleniumとは、Webブラウザを使ってWebアプリケーションをテストするツールです。この「Webブラウザを使って」というのが非常に大きなポイントで、人が手でWebブラウザを操作する代わりにSeleniumがWebブラウザを操作してくれるのです。 そして単純に操作するだけでなく、例えばエラーメッセージが正しく表示されているかといった検証も行うことができます。つまり、今まで人手を必要としていたWebブラウザを使った試験が自動化できるものなのです。そのため数百項目もあるテストも、クリック1回で実施できます。
[ThinkIT] 第1回:Webブラウザを使ったテストツールSeleniumとは (1/3)より
2.ChromeDriver
seleniumはWebブラウザを動かすものだがブラウザには複数種類があり、その中でGoogleChromeを動かすのであればchromedriverが必要となる。
以上の2つが必要である。
Seleniumのインストール
Pythonでseleniumをインストールするにはコマンドプロンプトで
pip install selenium
と入力すれば
C:\Users\xxx>pip install selenium Collecting selenium Downloading selenium-2.53.2-py2.py3-none-any.whl (884kB) 100% |################################| 890kB 1.5MB/s Installing collected packages: selenium Successfully installed selenium-2.53.2
と帰ってきてインストールが簡単にできる。
ChromeDriverのダウンロード
ここからダウンロードできる ChromeDriverのダウンロードDownloads - ChromeDriver - WebDriver for Chrome
ここから自分のPCにあったものをダウンロードすれば良いのだがWindowsの64bit版はないみたいなので、とりあえず32bit版をダウンロード
Seleniumを使う
1.Seleniumのインポート
PythonでSeleniumを使うにはコードに以下の文を書く必要がある
from slenium import webdriver
chromedriver.exeはpythonのコードと同じフォルダに置いておくけば特にコードの追加は必要ない。
2.chromeを起動
とりあえずchromeを動かすコードを記載
browser = webdriver.Chrome()
これで、chromeが新規に開く
3.URLのページを開く
URLを開くには
browser.get("URL")
これでURLに記述したページが開く。画像ではGoogleのページを開いてみた
4.ブラウザを閉じる
閉じるコードは
browser.quit()
でブラウザが終了するのでこのままPythonもexit()で抜ければ終わり