Yelpからビジネス情報を取得する

Sunday, April 08, 2018 10:41 AM

Octoparse 7.Xでは、Webサイトのリストからデータスクラビング操作を簡単にしました。 このチュートリアルでは、yelp.comを例として、リストからデータをスクラビングする方法について説明します。

このチュートリアルで次のURLを例として使います。

https://www.yelp.com/search?find_desc=&find_loc=Seattle%2C+WA&ns=1

 

この度はレストラン名、レストランのWebサイト、価格帯、電話、星評価、カテゴリなどの情報を抽出します。

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

1) Webページを開く」- 内蔵ブラウザで対象のWebページを開く 

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

3) 「ループアイテムを作る」 - 各ページ上のデータを取得する

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

5)  データカスタマイズ - 星の評価を再フォーマットする

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

 

 

 

1) 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く

      · アドバンストモード」を選択し、タスクを作ります。 自由度の高いアドバンストモードは、複雑なウェブサイトを対応できます。使い慣れたら、ほとんどのウェブサイトでスクレイピングを実行できます。

      · URLを入力して「URLを保存する」をクリックします。

      · ワークフロー」をオンにするとタスクの作りはやすくなります。

 

 

 

 

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

      · ページの下にある「次へ」ボタンをクリックし、「操作ヒント」パネルから「選択したリンクをループクリップする」を選択します。

 

 

 

 

 

3) 「ループアイテム」を作る - 各ページ上のデータを取得する

     ·   一番目のリスト製品のタイトルをクリックすると、Octoparseはページ内の同じのURLを自動的に識別します。

      · 操作ヒント」にある「すべて選択」をクリックします。

      · 「選択したリンクをループクリップする」をクリックします。

 

 

 

 

 

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

      · 必要なデータをクリックし、「操作ヒント」にある「選択した要素のテキストを抽出する」を選択します。

  · フィールド名を編集します。

 

ヒント!

スターランキング」をクリックする時、「選択した要素の内部HTMLを抽出する」を選択してください。抽出したデータは、正規表現で処理する必要があります。それがステップ5で行われます。

 

 

 

 

 

5) データカスタマイズ - 星の評価を再フォーマットする

場合によっては、必要なデータが不要な文字列と一緒HTMLに隠れることがあります。たとえば、星の評価を抽出したいですが、それをクリックして抽出できないようです。この場合、まずHTMLを抽出し、不要な文字列を削除するために抽出したデータを再フォーマットする必要があります。この例では、再フォーマットに3つのステップがあります。

    

           1. 「スターランキング」フィールドを直す

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

           ·  抽出データを再フォーマットする」、「ステップを追加する」、「正規表現でマッチする」を順番に選択します。

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

           · で始める」に「 alt=" 」を入力、「で終わる」に 「star rating"」を入力,「生成する」をクリックしてから「マッチする」をクリックすると、「マッチ結果」フィールドに結果が表示されます。

           · 適用する」と「OK」をクリックします。

 

 

 

     

           2. 「住所 」と「商品類」にある不要なスペースを削除する

           · 商品類データを選択し、「データフィールドをカスタマイズする」をクリックします。

           · 「抽出データを再フォーマットする」と「ステップを追加する」を選択し、「正規表現で置き換える」をクリックします。

           · 「正規表現」に 「\s+」を入力、「と置き換える」にスペースを入力、「計算する」をクリックします。

           · OK」をクリックします。

 

           3. 「店名」位置の精度を向上させる

           Webページにさまざまな構造があるため、データが見つからない場合はXPathを変更する必要もあります。

           · 店名」データを選択し、「データフィールドをカスタマイズする」をクリックします。

             · 抽出データを再フォーマットする」と「ステップを追加する」を選択し、「正規表現で置き換える」をクリックします。

           ·   正規表現」に不要な内容を入力、「と置き換える」にスペースを入力、「計算する」をクリックします

           · 「OK」をクリックします。

 

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

      · 保存する」をクリックします。

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

 

 

 

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

 

btn_sidebar_use.png
btn_sidebar_form.png