Tripadvisorからホテルの情報をスクレイピングする

Thursday, December 20, 2018 12:28 PM

前回BookingAirbnbからホテルの情報をスクレイピングする方法をご紹介いたしました。今回のチュートリアルでは、WebスクレイピングツールOctoparse 7.Xを使って、TripAdvisorからホテルの情報をスクレイピングする方法を説明します。

次のURLを例として使います。 

 

https://www.tripadvisor.com/Hotels-g186338-London_England-Hotels.html

ホテルの詳細ページに入り、ホテルのタイトル、住所、価格、評価を取得しようと思います。

 

このチュートリアルでは次の内容についても説明します。

   · RegExツールで星評価を数字に再フォーマット

 

以下はチュートリアルの主な手順です。[タスクファイルをダウンロードする ]

1)「Webページを開く」 - 対象のWebページを開く

2) ページ遷移のループを作る - 複数のページからデータを取得する

3)「ループアイテム」を作る - 各リストのデータを取得する

4) データを抽出する - 抽出したいデータを選択する

5) データカスタマイズ - ホテルの評価を再フォーマットする(オプション)

6) 抽出タスクを始める - タスクの実行を行いデータを取得する

 

 

 

 

 

 

 

1) 「Webページを開く」 - 対象のWebページを開く

 

• カスタマイズモードの「+ タスク」をクリックします。

• URLを「Webサイト」ボックスに貼り付け、「URLを保存する」をクリックして移動します。

 

 

Tripadvisorのクッキー設定のため、Octoparseでフィルタを設定する必要があります。

• Octoparseのブラウザで「Check-in」の日付を選択し、「操作ヒント」の「アイテムをクリックする」をクリックします。

• アクションを繰り返して、「Check-out」の日付と「Guest Information」を設定します。

今、必要な結果ページになります。

 

 

2) ページ遷移のループを作る - 複数のページからデータを取得する

• ページを下部にスクロールし、次のページボタン「Next Page」ボタンをクリックします。

• 「操作ヒント」から「次のページをループクリップする」をクリックします。

TripAdvisorがAJAXでコンテンツを読み込むから、「ページネーション」アクション用にAJAX Loadを設定する必要があります。

• 「ページに変更がない場合は再試行する(AJAX読み込みには慎重にお使いください)」のチェックを外します。

• 「AJAXでページを読み込む」をチェックし、「AJAXタイムアウト」を設定します。

 

 

 

 

 

3) 「ループアイテム」を作る - 各リストのデータを取得する

• 「Webページを開く」をクリックすると、最初のページに移動します。

複数ページにわたるデータを抽出する場合は、最初のページで「ループアイテム」を作るほうがいいです。

• 3つの[要素をクリックする]アクションを削除します。

Octoparseは保存されたクッキーをwebサイトに送信し、Tripadvisorがすでにさっきの操作を覚えたから、これらのアクションを削除しても結果ページを直接開くことができます。

• ワークフローでページネーションループを選択します。

 

これから「ループアイテム」を作ります。

• 一番目のホテルのタイトルをクリックすると、残りのタイトルが識別されます。

• 「操作ヒント」の「すべて選択」をクリックします。

• 「各要素をループクリックする」をクリックすると、「ループアイテム」を作ります。

そうすると、一番目のホテルの詳細ページを開きます。

 

 

 

 

4)  データを抽出する - 抽出したいデータを選択する

• ページ上で必要なデータをクリックします。

• 「操作ヒント」から「選択した要素のテキストを抽出する」を選択します。

• 必要に応じて、フィールド名を編集します。

 

ヒント!

ホテルの評価をクリックすると、「選択した要素の外部HTMLを抽出する」を選択します。抽出されたデータは、正規表現でさらに処理する必要があります。ステップ5で処理方法をご覧ください。

 

 

 

5) データカスタマイズ - ホテルの評価を再フォーマットする(オプション)

目標データがWebページに表示可能なテキストとして表示されていない場合は、まずソースコード(HTML)を抽出し、抽出したソースコードを必要な形式に処理する必要があります。

• 「スターランキング」を選択し、「データフィールドをカスタマイズする」をクリックします。

• 「抽出データを再フォーマットする」を選択します。

• 「ステップを追加する」をクリックし、「正規表現でマッチする」を選択します。

• 「RegExツールを試す」を選択します。

• 「で始める」ボックスをチェックし、「alt="」と入力します。

• 「で終わる」ボックスをチェックし、「"」と入力します。

• 「生成する」と「マッチする」をクリックします。

• 「適用する」をクリックし、「OK」をクリックします。

• 「OK」をクリックして保存します。

 

 

 

6)  抽出タスクを始める - タスクの実行を行いデータを取得する

• 「抽出開始」をクリックします。

• コンピュータでタスクを実行するには「ローカル抽出」を選択し、クラウドでタスクを実行するには「クラウド抽出」を選択します(有料版のみ)。

ここにサンプル出力があります。

 

 

 

 

 

この記事は役に立ちましたか?もしご不明な点がございましたら、いつでもお問い合わせください!

 

 

 

btn_sidebar_use.png
btn_sidebar_form.png