世界観光機関(UNWTO)によると、2017年の世界の観光客の総数は、前年と比べ7%増加して約13億2,220万人を果たしました。旅行業の発展に伴い、Booking.com、TripAdvisor.com、Airbnb.comなど世界のオンライン旅行代理店が急速に上場し、これまで以上に簡単にホテル、航空券の情報を入手できます。
このチュートリアルでは、WebスクレイピングツールOctoparseを使って、Booking.comからホテルの情報をスクレイピングする方法を説明します。
次のURLを例として使います。
ヒント! 1. 検索条件を絞ったURLをOctoparseに入力することを強くお勧めします。 2. Booking.comの構成と表示は、所在地のIPと優先言語によって異なる場合があります。 |
以下はチュートリアルの主な手順です。 [デモファイルをダウンロードする ]
2)「ページネーション」 - 複数のページからデータを取得する
1) 「Webページを開く」 - 対象のWebページを開く
- コピーしたURLを入力ボックスに貼り付けて、タスクを作ります。 自由度の高い「カスタイズタスク」は、複雑なウェブサイトを対応できます。
- 「抽出開始」をクリックします。
- 「ワークフロー」をオンにするとタスクの作りはやすくなります。
そうすると、ページが内蔵ブラウザで開られます。
2) 「ページネーション」 - 複数のページからデータを取得する
- ページ読み込み後、ページを下部にスクロールし、次のページボタン「>」をクリックします。
- 「操作ヒント」から「単一要素をループクリップする」をクリックします。
そうすると、2番目のページに入っています。
3)「ループアイテム」 - 詳細ページからデータを取得する
- 今は2番目のページですから、念の為に、「Webページを開く」、「ページネーション」をクリックして1番目に戻ります。
- 一番目のホテル名をクリックすると、Octoparseは同じページに残るホテル名を自動的に識別します。識別できない場合は、二番目のホテル名もクリックします。
- 「操作ヒント」にある「すべて選択」をクリックします。
- 「各要素をループクリックする」をクリックします。
そうすると、ループアイテムが自動作成されます。
4)「データを抽出する」 - 抽出したいデータを選択する
- 「ループクリックする」をクリックすると、Octoparseは最初のホテルの詳細ページを開きます。
- ページ上で必要なデータをクリックして、データを抽出します。テキストを抽出するには、「操作ヒント」から「選択した要素のテキストを抽出する」を選択します。
- 必要に応じて、フィールド名を編集します。
5)「抽出開始」 - データ取得のタスクを実行する
- 左上の「保存する」、をクリックします。「抽出開始」をクリックします。
- 「ローカル抽出」または「クラウド抽出」(有料版のみ)を選択します。
ヒント! デフォルトでOctoparseがページ上で定義されたパターンの要素を見つけられない場合、フィールドは空白のままになります。しかしOctoparseは必要な要素がWebサイトに表示されていても、定義されたパターンの要素を見つけられないこともあります。この問題が発生した場合は、以下のチュートリアルをご参考ください。 |