2023年 食べログからレストラン情報を取得する
フォローする「食べログ」を使ってた店を探すことがありますか?食べログでランチ・ラーメン・焼肉・寿司・居酒屋・スイーツなど、全国80万件以上の飲食店に寄せられた2,200万件以上のクチコミがすべて無料で見られます。とても便利なサイトです。今回は食べログからレストラン情報をスクレイピングする方法を説明いたします。
チュートリアルで次のURLを使用します。
まずは全体的な流れを見てみましょう。
1) 「Webページを開く」 - 対象のWebページを開く
- コピーしたURLを入力ボックスに貼り付けて、タスクを作ります。 自由度の高い「カスタイズタスク」は、複雑なウェブサイトを対応できます。
- 「抽出開始」をクリックします。
2) 「テクストを入力する」 – 検索する店を入力する
· 入力ボックスをクリックし、「操作ヒント」の「テクストを入力する」をクリックした後、エリアを入力し、「はい」をクリックします。
·同じ手順で、「キーワード」を入力します。
· 「検索」ボタンをクリックし、「操作ヒント」の「選択した要素をクリックする」をクリックします。
ヒント!
テキスト/キーワード入力の詳細についてを参照してください。 |
3) ページ遷移のループを作る - 複数のページからデータを取得する
· 下にスクロールして、Webページの「次の20件」ボタンをクリックします。
· 「操作ヒント」の「単一リンクをループクリップする」をクリックします。
4)「ループアイテム」を作る - 各リストのデータを取得する
今、2番目の結果ページに遷移するはずですが、2ページのままで問題がありません。
· 一番目のレストランのタイトルをクリックすると、残りのタイトルが識別されます。
· 「操作ヒント」の「すべて選択」をクリックします。
Octoparseは現在ページのタイトルのリンクを自動的に選択します。選択したリンクは緑色で強調表示され、詳細ページへの他のリンクは赤色で強調表示されます。
· 「各リンクをループクリップする」をクリックすると、「ループアイテム」を作ります。
Octoparseは、 「ループアイテム」で取り込まれた各リンクをクリックし、詳細ページを開きます。
5) データを抽出する - 抽出したいデータを選択する
「各リンクをループクリップする」をクリックすると、Octoparseは最初のレストランの詳細ページを開きます。
· ページ上で必要なデータをクリックして、「操作ヒント」から「選択した要素のテキストを抽出する」を選択します。
· 必要に応じて、フィールド名を編集します。
各レストランの詳細ページには、目標データの位置は違います。ですから、より正しくデータをスクレイピングするには、属性よりXpathを指定する必要があります。
· 「店名」のフィールドで「要素のXpathを設定」をクリックします。
//th[contains(text(),"店名")]/following-sibling::td[1]
· 「保存」をクリックしてデータが指定できました。
ほかのデータも同じXpath式で変更できます。
//th[contains(text(),"ジャンル")]/following-sibling::td[1]
//th[contains(text(),"予約・")]/following-sibling::td[1]
//th[contains(text(),"住所")]/following-sibling::td[1]
//th[contains(text(),"情報を入れてください")]/following-sibling::td[1]
ヒント! XPathとその生成方法の詳細についてはXPath基礎編 - 1.基本概念 |
6) 抽出タスクを始める - タスクの実行を行いデータを取得する
- 「保存する」をクリックします。
- 「抽出開始」をクリックします。