・pipを使って簡単にCromeDriverをインストールしたい方
・Pythonを使ってwebに掲載してある情報の取得方法を知りたい方
どうもこんにちは!!
コンです。
久しぶりに色々なフリーランスサイトを見てたのですが
結構多くの会社さんが、web上の情報収集を依頼しております。
例えばこんな案件が多いです。
【案件】
指定のサイト(例えばAmazon)の検索から指定のワード検索した結果をCSVに保存する。
【報酬】
1万円
結構安い案件なのですが、この手の依頼は定期的にあるので
お小遣い稼ぎにはちょうどいいと感じております。
このお題をクリアするにはいくつかの手順があります。
それをまとめると以下のようになります。
- Pythonでスクレイピングできる環境を構築する。
- Pythonで指定のサイトにアクセスするコードを書き起こす。
- アクセスしたサイトで行いたい操作をコードに書き起こす。
- ③の結果をcsvファイルに保存する。
今回は上記の①について書いていこうと思います。
Pythonによるスクレイピング
Webサイトから任意の情報を抽出、整形、解析する技術のことをWebスクレイピングと言います。
スクレイピングといえばだいたい、webスクレイピングのことをいいます。
(自分が経験不足で他のスクレイピングの方が主流したら申し訳ございません。)
Pythonにはスクレイピングをするためのライブラリはいくつかあるのですが
ここでは、最近主流になりつつある
「selenium」というライブラリと「ChromeDriver」というドライバー
を使用した方法を紹介いたします。
SeleniumはWebブラウザで行うクリック操作やキーボード入力など、本来ならマウスやタッチパッドで行うことをPythonのプログラムによって行えるようにするライブラリです。
ChromeDriverはChromeブラウザをプログラムで動かす為のドライバーです。
他のEdgeだったりSafariだったりのドライバーでもいいのですが
OSによりけりなブラウザよりも今回はwindowsとMacユーザの方も多く使ってらっしゃるであろうChromeを使って検索していきたいと思います。
SeleniumでChromeブラウザを操作して、色々なサイトにログインすることが可能になります。
Pythonでスクレイピングできる環境を構築
Seleniumのインストール
Seleniumのインストールは次のようにコマンドプロントもしくはターミナルで打ち込み実行することで、インストール出来ます。
pip install selenium==4.1.0
こちらはpip installでぱぱっとインストールできるから、特に難しくはないでしょう。
(22/7/13 追記)
seleniumのバージョンを指定いたしました。
巷に溢れている情報は4.1の情報が多いのと、4.3など新しいバージョンのコードも動作を確認したため
4.1をこのブログでは推奨いたします。
ChromeDriverのインストール
chrome driverをインストールするためには以下の手順が必要です
①Chromeのバージョン確認
②Chromeのバージョンに対応したChromeDriverのバージョンの確認
③ChromeDriverのインストール(pip使用 & バージョン指定)
ひとつひとつ見ていきましょう。
1. Chromeのバージョン確認
私はmacOSのPCを使っているのですが
「Google Chromeについて」を開くとバージョンが表示されます。
バージョン103.0.5060.53と表示されてますね。
実は大事なのは先頭の103という数字なのですが、これを念頭においてChrome Driverを確認していきましょう。
2. Chromeのバージョンに対応したChromeDriverのバージョンの確認
ChromeDriverのダウンロードページから、使用しているChromeのバージョンに対応したCromeDriverのバージョンを確認しましょう。
上のリンクをクリックすると以下のようなページに飛ぶと思います。
このCurrent Releaseに書かれている内容のうち
さきほどのCromeのバージョン103に対応している箇所を赤枠で囲っております。
ここを読むと、103.0.5060.53をインストールすれば良いことが分かります。
ChromeDriverのインストール(pip使用 & バージョン指定)
pipでバージョンを指定してインストールするコマンドには、下記のようにコマンドプロントもしくはターミナルで打ち込み実行を行います。pip install chromedriver-binary==<ChromeDriverバージョン番号>
今回は以下のようになります。
pip install chromedriver-binary==103.0.5060.53.0
インストールできたかどうかのテスト
ここまでインストールしたら、大丈夫かテストしてみたいですよね。
いったん以下のコードを実行してみて
エラーがないか確認してみましょう!!
from selenium import webdriver
import chromedriver_binary
import time
driver = webdriver.Chrome()
time.sleep(10)
エラー無く実行できましたか??
以下のようなタブが立ち上がれば大丈夫です(後ろにブログ用の画像がちょっと写って恥ずかしい)
ここまでできれば環境構築完了です!!
お疲れ様でした!!
おわりに
ここまで読んでいただき、ありがとうございます。
Python始めたばかりだよ〜。あまりPCに詳しくないよ〜。
という方でもpipでなら、環境構築が簡単でいいですよね。
私もなるべくpipを使って環境構築したり、必要なドライバをインストールしております。
Python初めて6年になりますが、環境構築はやはり難しいです。
一つ一つ情報を確かめつつプログラムのインストールをしていきましょう
(未だにTensorFlowとkerasとGPUの環境を一発で完璧にできたことがない)
それでは。