見出し画像

PythonでWebスクレイピングをやってみた ~5~

こちらで書いたやりたいことは一通りできたので、今度は別のことをやってみます。やりたいことは、chocoZAP(チョコザップ)の店舗一覧のデータをWebスクレイピングで取得して、またGoogleマップのマイマップを作るということになります。

調べてみると、どうもchocoZAPのページはJavaScriptで作成されているらしく、前回まで使っていたRequestsライブラリではWebスクレイピングできないことが分かりました。

そこで今回は、Seleniumというライブラリを使ってWebスクレイピングすることにしました。

Seleniumについては下記の動画で解説されているので、そちらを見てもらった方が早いと思います。

とりあえずSeleniumをインストールしてサンプルコード等を動かしてみましたが、最初は簡単なサンプルコードすら動きませんでした。

そこでいろいろとググったりしながらコードを修正して、とりあえずSeleniumを使ってchocoZAPの店舗検索のページを開いてプルダウンメニューで「東京都」を選択し、「絞り込んで表示」ボタンを押して画面を一番下までスクロールするという一連の動作をさせることができました。

正直こんなに苦労するとは思わなかったのですが、どうも原因はインストールしたSeleniumのバージョンにあったみたいです。

現状何も考えずにSeleniumをインストールするとSelenium4がインストールされてしまうようです。このSelenium4はSelenium3とはだいぶ違ったものになっているようで、Selenium3用に書かれたコードは色々直さないとSelenium4では動かないようでした。

現在巷に溢れているSeleniumのコードはSelenium3で動くものが多いようで、そんなわけでネット上にあるSeleniumのコードを動かそうと思ってもそのままではSelenium4では動かないということだったみたいです。

Selenium3にインストールし直そうかとも思いましたが、上の動画で出てくる便利そうなツール「Selenium IDE」を使って得られるコードがSelenium4用のコードだったので、このままSelenium4で行くことにします。

そんなわけでとりあえず作成したPythonのコードは下記のようになりました。

ここから先は

844字

¥ 100

この記事が気に入ったらサポートをしてみませんか?