Octoparseというノーコードツールを使うことでマウス操作で簡単にWebスクレイピングを実行できます。
このページでは、Octoparseを使ってGoogle Mapの口コミを取得する流れを解説します。
Octoparseとは
OctoparseはGUI操作でWebスクレイピングを行うことができるノーコードツールです。
Web上でアカウント登録をした上で、アプリケーションをPCにインストール使用します。
従来、Webサイト上の文章やデータを利用したい場合PythonのBeautifulSoupなどでWebスクレイピングを行い、取得したHTMLから必要な部分を取り出してテーブルデータへ整形していました。
一方、Octoparseでは画面操作・入力だけで自動でWebスクレイピングを実行し、データをCSVやExcelなどの形式で取得できます。
Octoparseは有料プランもありますが、登録のみで無料で使えるフリープランでも1万レコードまでスクレイピングできます(2024/8/11現在、各プランの詳細はこちらを参照)。
そのため、多少の操作を覚えれば無料でWebスクレイピングを行うことができます。
Octoparseでは「Webページを開く」や「スクロール」、「データを収集」といったタスクを組み合わることでスクレイピングを行います。
この1つ1つのタスクを手動で組み合わせていく方法をカスタマイズタスクといいます。
既に特定のサイトに合わせてタスクを組み合わせたものをテンプレートタスクといいます。
Octoparseではカスタマイズタスクとテンプレートタスクの両方を使用できますが、無料のフリープランではテンプレートタスクを利用してもデータをエクスポートできません(2024/8/11現在)。
そのため、無料で使う場合にはカスタマイズタスクでタスクを自分で組み合わせて実行する必要があります。
Google Mapの口コミを取得
ここではOctoparseの使用例として、特定のスポットのGoogle Mapの口コミをスクレイピングします。
はじめに、PCにアプリケーションをインストールしてログインします。
アプリケーションの画面は上図のようになっています。
左側のツールバーには、新規作成(新しいタスクを作成・インポート)、マイタスク(既存のタスクの一覧)、テンプレートギャラリー(特定サイト向けテンプレートの使用)などがあります。
1つのページのスクレイピングには1つのタスクが対応します。
タスクには、スクレイピングの個々の処理を1つ1つ手動で組み合わせていくカスタマイズタスクと公式があらかじめ作成したテンプレートを使用するテンプレートタスクがあります。
ここでは、無料のフリープランでも使用できるカスタマイズタスクでスクレイピングを行います。
新しいタスクを作成する場合、はじめにスクレイピングを行うURLを入力して保存すると、自動的にそのページを開いた編集画面になります。
Google Mapで口コミを取得する際には、処理の単純化のために観光スポットをクリックした後にタブを選択してクチコミを表示する画面にした状態のURLをコピペして入力します。
上図では、Google Mapでクッチャロ湖水鳥観察館(北海道浜頓別町)という施設の口コミのURLをOctoparseで読み込ませた後の編集画面です。
右側のフローチャートがスクレイピングの処理であり、自分が取得したい部分を取得できるように手動で調整します。
上図のフローチャートでは、以下のような処理を示しています。
①「Webページを開く」で口コミページを開く
②「スクロール」で画面を一番下までスクロールして最後の口コミまで表示させる
③「ループアイテム」で口コミを1つずつ処理する
④「データを収集」で1つずつ口コミのデータを取得する
このような処理を行うことで、クッチャロ湖水鳥観察館の全ての口コミを取得できます。
作成したフローチャートは右上の「保存」ボタンで保存できます。
「実行」ボタンを押してスクレイピングを開始します。
フローチャートに問題があるとスクレイピングできずに終了することもあります。
また、フローチャートの処理に重複があり、同じデータを複数回取得した場合は重複の数が増加していきます。
上の画面はスクレイピング実行中画面です。
スクレイピングが終了したり、途中で停止すると取得したデータをエクスポートできるようになります。
テンプレートを使用してスクレイピングした場合は無料のフリープランではエクスポートできません。
エクスポートの際には、重複削除の有無やファイル形式を選択できます。
ファイル形式はExcelやCSV, Googleスプレッドシートなどがあります。
参考文献
Octoparse 2024/8/11閲覧
Octoparse Japan, note 2024/8/12閲覧