食べログは、日本最大級のグルメ・口コミプラットフォームです。店舗の基本情報、評価点数、口コミ、予約状況までが構造化された形で集まっているため、飲食店リストの作成、競合店のモニタリング、エリア単位の市場調査、インバウンド向けのレビュー分析といった用途でスクレイピングの対象になります。
このガイドは、食べログから何を、どのページ構造でたどって取得するかという技術的なプレイブックです。「食べログのスクレイピングは違法か」といった合法性の判断はWebスクレイピングは合法かを参照してください。
食べログから取得できるデータ
取得できる項目は、対象とするページの種類によって変わります。何を集めたいかで、たどるべきページが決まります。
検索結果(一覧)ページ — エリアやジャンルで絞り込んだ一覧から、多数の店舗の基本情報をまとめて取得できます。店舗名、ジャンル、エリア・最寄駅、評価点数、口コミ件数、予算帯(ランチ / ディナー)、店舗ページへのURL。
店舗詳細ページ — 個々の店舗の詳しい情報。住所、電話番号、アクセス、営業時間、定休日、席数、個室の有無、支払い方法など。
口コミページ — レビュー本文、投稿者、点数、来店時期。ただし口コミ本文は著作物性が高く、取得後の扱いには注意が要ります(後述)。
空席・予約カレンダー — 日付別の空席状況。この領域はJavaScriptで描画されることが多く、通常のHTML取得では取れません(後述)。
Step 1: 検索結果から一覧を取得する
まずエリアとジャンルで対象を絞り込みます。食べログの検索条件はURLのパラメータに反映されるため、対象エリア・ジャンルごとにURLを用意しておくと、収集範囲を明確に管理できます。この一覧ページで、店舗名・評価・予算などの基本項目と、各店舗詳細ページへのリンクをまとめて取得します。
Step 2: 店舗詳細ページへ遷移する
一覧で集めた店舗URLをループでたどり、住所・電話番号・営業時間・席数といった詳細項目を取得します。一覧だけで足りるのか、詳細まで必要なのかを先に決めておくと、無駄なページ遷移が減り、対象サイトへの負荷も抑えられます。
Step 3: 口コミを取得する(必要な場合)
口コミは、感情分析やレビュー傾向の把握が目的のときだけ取得します。口コミ一覧は「もっと見る」やページ送りで追加読み込みされることが多く、単に表示するだけでなく操作を伴います。ページ送りや無限スクロールの扱いはページネーションの扱い方を参照してください。
JavaScriptで描画されるコンテンツの扱い
空席カレンダーのような要素は、ページを開いた直後のHTMLには存在せず、JavaScriptが実行された後にはじめて現れます。生のHTMLを取りに行くだけのスクレイパーでは、その部分が空のまま返ってきます。
解決策は、実際にJavaScriptを実行する実ブラウザでページを描画してから抽出することです。なぜ実ブラウザが必要になるのか、他にどんな解法(背後のAPIを直接呼ぶ、SSRを検知するなど)があるのかはJavaScriptで描画されるページのスクレイピングで解説しています。OSSで実装するならPlaywrightなどでも同様に対応できます。
ページの読み込みが「完了する」のを待つのではなく、必要な要素(カレンダーの日付など)が描画されるのを待つように設計します。loadイベントの完了とコンテンツの描画完了は一致しないためです。
アクセス制御と安全な収集
食べログは自動アクセスに対する制御を備えており、短時間に大量のリクエストを送ると検知されやすくなります。取得頻度・件数・実行時間帯を抑え、人の閲覧を大きく超えないペースで運用することが、安定して取得し続けるための前提です。
アクセス制御を技術的に回避しようとするのではなく、負荷をかけない設計を優先してください。食べログでは一部のパスにrobots.txtでDisallowが指定されている場合があるため、対象URL単位で利用規約とrobots.txtを確認します。口コミ本文は著作物性が高く、取得できることと、転載・再配布してよいことは別問題です。合法性の判断基準はWebスクレイピングは合法かを参照してください。
Octoparseでの取得
Octoparseはヘッド付きの実ブラウザでページを描画するため、空席カレンダーのようなJavaScript描画コンテンツも、コードを書かずにそのまま扱えます。一覧から詳細へのループ遷移、追加読み込みの待機(AJAXタイムアウトやスクロール)も、視覚的なエディタ上で設定できます。継続的にデータが必要な場合は、クラウド実行でPCを閉じたまま定期的に取得を回せます。
エリア×ジャンルの一覧取得は、食べログ スクレイパーのテンプレートからURLを入力するだけで始められ、取得できる項目のプレビューも確認できます。
活用シーン
- 飲食店の営業リスト作成 — エリア・ジャンルで絞った店舗情報を提案リストとして整理する
- 競合店の評価モニタリング — 特定エリアの評価点数や口コミ件数の推移を定期的に追う
- エリア市場調査 — ジャンル分布、価格帯、店舗密度からエリアの特性を把握する
- インバウンド・レビュー分析 — 口コミの傾向を集計し、需要や改善点の分析につなげる
食べログのスクレイピングは、目的を絞るほどうまくいきます。何を集めるかを先に決めておけば、取得する項目が減り、対象サイトへの負荷も軽くなり、出力の信頼性も上がります。