Michelin Restaurants Search Scraper avatar

Michelin Restaurants Search Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Michelin Restaurants Search Scraper

Michelin Restaurants Search Scraper

Scrape restaurant listings from the official Michelin Guide with ease. Collect star ratings, chef info, cuisine types, location data, booking availability, and 30+ fields per restaurant — perfect for food researchers, travel platforms, and hospitality analysts.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Stealth mode

Stealth mode

Maintained by Community

Actor stats

0

Bookmarked

10

Total users

5

Monthly active users

14 days ago

Last modified

Share

Michelin Guide Restaurant Scraper: Extract Star Ratings & Reviews


What Is Michelin Guide?

Guide Michelin (guide.michelin.com) is the world's most prestigious restaurant rating authority, awarding one to three Michelin Stars to exceptional establishments globally. The platform also features the Green Star for sustainable gastronomy, Bib Gourmand for value dining, and curated hotel selections. For anyone building food intelligence tools, travel apps, or hospitality datasets, the Michelin Guide Restaurant Scraper automates the collection of this high-value data at scale.


Overview

The Michelin Guide Restaurants Search Scraper extracts structured data from Michelin's paginated restaurant listing pages. It is designed for:

  • Travel platforms building curated dining guides
  • Food researchers analyzing fine dining trends by region
  • Hospitality analysts tracking award distributions and cuisine diversity
  • Developers powering restaurant recommendation engines

Key strengths include support for paginated URLs, configurable item limits, and resilient handling of failed pages.


Input Format

The Actor supports two scraping modes — use only one at a time:

  1. Scrape by URLs — scrape data directly from a list of Michelin Guide listing/search page URLs.
{
"ignore_url_failures": true,
"max_items_per_url": 200,
"urls": [
"https://guide.michelin.com/en/en/ile-de-france/paris/restaurants/page/2"
]
}
  1. Scrape by search filters — scrape data using a keyword and additional filters (distinction, cuisine, price, service, etc.) instead of providing URLs.
{
"keyword": "a",
"sort_by": "lowestPrice",
"page": 1,
"distinction": "",
"good_for": "",
"cuisine": "",
"special_diets": "",
"price": "",
"service": "",
"max_items_per_url": 200
}

There is also a General settings group that applies to both modes.

1. Scrape by URLs

Use this mode when you already have specific Michelin listing/search page URLs. When this mode is used, all options in the "Scrape by search filters" section will be disabled.

FieldTypeDefaultDescription
urlsarrayURLs of Michelin restaurant listing/search pages to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list. Example: https://guide.michelin.com/en/en/ile-de-france/paris/restaurants/page/2
ignore_url_failuresbooleantrueIf true, the scraper continues running when a URL fails instead of stopping the entire run. Recommended for bulk jobs.

Tip: Michelin listing pages are paginated (.../restaurants/page/2, /page/3, etc.). Add multiple page URLs to collect an entire region's listings.

2. Scrape by search filters

Use this mode when you want to search using a keyword and additional filter attributes instead of scraping by URLs. If you use this mode, leave the urls field above empty.

FieldTypeDefaultDescription
keywordstringThe keyword to search for.
distinctionstringAnyFilter by Michelin distinction: 3 Stars, 2 Stars, 1 Star, Bib Gourmand, or Selected Restaurants.
good_forstringAnyFilter by occasion/context, e.g. Chef's Table, Date night, Family Friendly, Groups, Iconic, Trending, Worth Queueing For, and more.
cuisinestringAnyFilter by cuisine type. Supports a very large list (200+ values) covering regional and international cuisines — e.g. French, Italian, Japanese, Cantonese, Peruvian, Vegan, Sushi, Ramen, Steakhouse, Fusion, etc. Select the exact value from the dropdown in the input UI.
special_dietsstringAnyFilter by dietary options: Vegetarian options, Vegan options, Gluten-free options, Vegetarian menu, Halal options, Kosher options.
pricestringAnyFilter by price range: $ · On a budget, $$ · A moderate spend, $$$ · Special occasion, $$$$ · Spare no expense.
servicestringAnyFilter by amenities/services, e.g. Wheelchair access, Air conditioning, Car park, Terrace, Valet parking, Pets allowed, accepted payment methods (Visa, Mastercard, Amex, etc.), and more.
sort_bystringRelevanceSort results by Relevance, Lowest price, or Highest price.
pageintegerThe page number to start scraping from.

3. General settings

Applies to both scraping modes above.

FieldTypeDefaultDescription
max_items_per_urlinteger20The maximum number of restaurant records to collect per URL/search. Increase to 200 for full-page coverage.

Building Your Search URL (for Scrape by URLs mode)

Navigate to guide.michelin.com, apply your desired filters (distinction, cuisine, price, location), then copy the resulting URL from your browser. Michelin listing pages are paginated, so you can also append /page/2, /page/3, etc. to collect additional pages.

Example use case: The prefilled URL lists Michelin-recognized restaurants in Île-de-France (Paris), starting from page 2 of the results.


Output Format

Sample output

{
"geoloc": {
"lat": 48.8697309,
"lng": 2.3132078
},
"area_name": null,
"image": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/ad849629ad14462aaaed8386342ca832.jpeg",
"images": [
{
"copyright": "Grégoire Gardette/Le Gabriel - La Réserve Paris",
"identifier": "4648336",
"order": 0,
"topic": "SUJ_INT",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/ad849629ad14462aaaed8386342ca832.jpeg"
},
{
"copyright": "Julie Limont/Le Gabriel - La Réserve Paris",
"identifier": "8605042",
"order": 1,
"topic": "SUJ_ENT",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/35523cccdef5423e9e655b3fe7a0ee69.jpg"
},
{
"copyright": "Julie Limont/Le Gabriel - La Réserve Paris",
"identifier": "6806820",
"order": 2,
"topic": "SUJ_PLAT",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/c7162a146ea449f6a5b2c11aad966b5f.jpeg"
},
{
"copyright": "Julie Limont/Le Gabriel - La Réserve Paris",
"identifier": "7112040",
"order": 3,
"topic": "SUJ_ENT",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/725b16e7b3924961b418bcd6b75665a3.jpeg"
},
{
"copyright": "Julie Limont/Le Gabriel - La Réserve Paris",
"identifier": "7115425",
"order": 4,
"topic": "SUJ_DES",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/926554c401d5477fb80b1d8152b8d4f3.jpeg"
}
],
"chef": null,
"city": {
"name": "Paris",
"slug": "paris",
"exonyms": [
"Parigi",
"Paris",
"París"
]
},
"country": {
"name": "France",
"slug": "fr",
"exonyms": [
"Frankreich",
"Francia",
"프랑스",
"Frankrijk",
"ฝรั่งเศส",
"Fransa",
"فرنسا"
],
"code": "FR",
"cname": "france"
},
"currency": "EUR",
"currency_symbol": "€",
"good_menu": 0,
"green_star": null,
"identifier": "476630",
"main_image": {
"copyright": "Grégoire Gardette/Le Gabriel - La Réserve Paris",
"identifier": "4648336",
"order": 0,
"topic": "SUJ_INT",
"url": "https://axwwgrkdco.cloudimg.io/v7/__gmpics3__/ad849629ad14462aaaed8386342ca832.jpeg",
"source": "cloud_image"
},
"michelin_award": "THREE_STARS",
"name": "Le Gabriel - La Réserve Paris",
"new_table": 0,
"offers": 0,
"offers_size": 0,
"online_booking": 1,
"price_category": {
"code": "CAT_P04",
"label": "Spare no expense",
"slug": "luxury"
},
"region": {
"name": "Ile-de-France",
"slug": "ile-de-france",
"exonyms": [
"Île-de-France",
"Ile-de-France",
"Isla de Francia"
]
},
"region_code": null,
"site_name": "France",
"site_slug": "fr",
"slug": "le-gabriel476630",
"take_away": 0,
"delivery": 0,
"hotel_selection": {
"id": "8898",
"name": "La Réserve Paris",
"slug": "la-reserve-paris-hotel-and-spa-8898",
"city_slug": "paris",
"picture": "static.prod.r53.tablethotels.com/media/hotels/slideshow_images_staged/large/1085471.jpg",
"distinction_score": 3,
"feedback_meter_score": 18.7,
"criteria_style": "Contemporary Classic"
},
"cuisines": [
{
"code": "TYC_1036",
"label": "Creative",
"slug": "creative"
}
],
"url": "/en/ile-de-france/paris/restaurant/le-gabriel476630",
"other_urls": [
"/en/ile-de-france/paris/restaurant/le-gabriel476630"
],
"object_type": "RESTAURANT",
"object_id": null,
"snippet_result": {
"main_desc": {
"value": "Just a well-heeled step from the Champs-Élysées, this",
"match_level": "none"
}
},
"from_url": "https://guide.michelin.com/en/en/ile-de-france/paris/restaurants"
}

Each restaurant record returns 30+ structured fields:

Identity & Location

FieldMeaning
NameRestaurant name as listed on Michelin Guide
SlugURL-friendly identifier for the restaurant
IdentifierUnique internal Michelin ID
Object IDPlatform-level object reference
Object TypeRecord type (typically restaurant)
Site NameMichelin sub-site name (e.g., guide.michelin.com)
Site SlugSlug of the Michelin regional site
URLDirect Michelin page URL for the restaurant
Other URLsAlternate or localized URLs
CityCity where the restaurant is located
RegionRegion or state
Region CodeISO or Michelin region code
CountryCountry of operation
Area NameSub-area or neighborhood name
GeolocLatitude/longitude coordinates

Awards & Recognition

FieldMeaning
Michelin AwardStar rating or award level (1★, 2★, 3★, Bib Gourmand, etc.)
Green Startrue if the restaurant holds a Michelin Green Star for sustainability
Good MenuIndicates the presence of a recommended set menu
New Tabletrue if the restaurant is newly listed in this edition

Cuisine & Pricing

FieldMeaning
CuisinesList of cuisine types (e.g., French, Japanese, Contemporary)
Price CategoryPrice range tier (e.g., €€€, €€€€)
CurrencyCurrency name (e.g., Euro)
Currency SymbolCurrency symbol (e.g., )
ChefName of the head chef

Booking & Services

FieldMeaning
Online Bookingtrue if online reservation is available
OffersAvailable special offers or menus
Offers SizeNumber of current offers
Take Awaytrue if takeaway service is available
Deliverytrue if delivery is available
Hotel Selectiontrue if the restaurant is part of a hotel property

Media

FieldMeaning
ImagePrimary thumbnail image URL
Main ImageFull-resolution hero image URL
ImagesArray of all available image URLs

Search Metadata

FieldMeaning
Snippet ResultShort description or excerpt shown in search results

How to Use

  1. Find listing URLs — Browse Michelin Guide by country, region, or city. Copy the search/listing page URL (e.g., .../paris/restaurants/page/1).
  2. Add paginated URLs — To collect all results for a region, add multiple page URLs (/page/1, /page/2, etc.) to the urls array.
  3. Set item limit — Use max_items_per_url: 200 for full-page collection; lower values for sampling.
  4. Enable failure tolerance — Keep ignore_url_failures: true for bulk runs.
  5. Export — Download results as JSON, CSV, or Excel.

Common issues:

  • Only use listing/search pages, not individual restaurant detail pages.
  • If a region has many pages, enumerate them manually or use a URL pattern.

Use Cases & Business Value

  • Travel apps: Build curated dining itineraries filtered by star rating, cuisine, or city
  • Market research: Analyze Michelin award distribution trends across countries
  • Restaurant benchmarking: Compare pricing tiers and cuisine categories across regions
  • Sustainability research: Identify Green Star restaurants for eco-focused travel guides

Conclusion

The Michelin Guide Restaurant Scraper turns one of the world's most authoritative culinary databases into structured, actionable data. With award details, geolocation, booking availability, and media URLs all in one record, it powers everything from travel recommendation engines to hospitality market analysis.