Google Maps reviews-scraper

Een Google Maps reviews-scraper leest openbare reviews van één bedrijfs-ID: tekst, beoordeling, datum, auteur en reactie van de eigenaar, tot 100 per pagina. Exporteer die pagina of lees haar via de API.

Voor je start · Live onderzoek vereist een ingestelde gegevensbron. Voorbeelden zijn gemarkeerd. Betaalde abonnementen zijn nog niet beschikbaar.

Wat is een Google Maps reviews scraper?

Een Google Maps reviews scraper leest openbare reviews voor één bedrijfs-ID: tekst, beoordeling, datum, auteur en reactie van de eigenaar, tot 100 reviews per pagina. Hij zoekt niet op categorie. Exporteer die pagina, of vraag een volgende pagina aan met een eigen budget.

Velden in elke review

Velden verschillen per review. Een veld verschijnt alleen als de gegevensbron het teruggeeft, en een leeg veld bewijst niet dat de informatie niet bestaat.

Reviews exporteren met de Google Maps reviews-scraper

  1. Kies het bedrijf

    Zoek in Bedrijven verkennen, open een bedrijf en kies Reviewcollectie onder Vervolgtaak voorbereiden. U kunt ook Reviewcollectie kiezen en een bedrijfs-ID plakken.

  2. Stel de pagina in en start

    Kies een volgorde bij Sortering van reviews, eventueel een Tekstfilter voor reviews en maximaal 100 reviews. Controleer het maximum aantal eenheden en start.

  3. Haal meer pagina’s op en exporteer

    Open Resultaatpagina’s om telkens één extra pagina op te halen, elk met een eigen budget. Download CSV, Excel, JSON of JSONL, of combineer de pagina’s in één export van de volledige keten.

Om reviews voor meerdere bedrijven te verzamelen, selecteert u ze in Bedrijven verkennen en kiest u Reviews voor de selectie verzamelen in Bulkonderzoek. Elk bedrijf wordt één taak binnen één totaalbudget.

Google Maps reviews-API

Maak via de API van de Google Maps reviews-scraper een reviewtaak aan met een bedrijfs-ID en een expliciet budget in eenheden, en lees de reviews daarna pagina voor pagina. Het lezen van opgeslagen reviews start nooit nieuw onderzoek.

Gebruik in een MCP-client eerst estimate_job, daarna create_job met een stabiele idempotency_key en max_units, en lees met get_job_results. Voor de volgende pagina geeft preview_provider_continuation de exacte taak terug die u moet autoriseren.

curl -X POST https://mapsscraper.dev/api/v1/jobs \
  -H "Authorization: Bearer $MAPSSCRAPER_API_KEY" \
  -H "Idempotency-Key: reviews-sample-business-001" \
  -H "X-Max-Units: 1" \
  -H "Content-Type: application/json" \
  -d '{"kind":"reviews","business_id":"sample-business-id","limit":100,"review_options":{"sort_by":"newest"}}'

HTTP/1.1 202 Accepted
{"id":"6f1c2b3a-0000-4000-8000-000000000000","status":"queued","reserved":1}

curl "https://mapsscraper.dev/api/v1/jobs/6f1c2b3a-0000-4000-8000-000000000000/results?offset=0&limit=100" \
  -H "Authorization: Bearer $MAPSSCRAPER_API_KEY"

Voorbeeldrespons, ingekort. De waarden zijn ter illustratie en geen echte bedrijfsgegevens.

{
  "items": [
    {
      "review_id": "sample-review-id",
      "business_id": "sample-business-id",
      "review_text": "Friendly staff and a short wait.",
      "rating": 5,
      "review_language": "en",
      "author_name": "Sample Reviewer",
      "owner_response_text": "Thank you for visiting.",
      "like_count": 2,
      "_source": {
        "provider": "live_maps",
        "fetched_at": "2026-11-01T12:00:00Z"
      }
    }
  ],
  "count": 1,
  "offset": 0,
  "next_offset": null,
  "provider": "live_maps",
  "coverage": "bounded_sample",
  "fetched_at": "2026-11-01T12:00:00Z"
}

Argumenten voor de MCP-tool create_job

{
  "task": {
    "kind": "reviews",
    "business_id": "sample-business-id",
    "limit": 100,
    "review_options": {
      "sort_by": "newest"
    }
  },
  "idempotency_key": "reviews-sample-business-001",
  "max_units": 1
}

Python-voorbeeld

Maak een reviewtaak aan in de Google Maps reviews-scraper, wacht tot die klaar is, lees de reviews en bekijk daarna een voorvertoning van de volgende pagina. Het indienen van die pagina is een aparte betaalde taak.

import os
import time
import uuid

import requests

API = "https://mapsscraper.dev/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['MAPSSCRAPER_API_KEY']}"}


def run(task, units):
    # Keep the key: a retry of the same page must send it again.
    key = str(uuid.uuid4())
    job = requests.post(
        f"{API}/jobs",
        json=task,
        headers={**HEADERS, "Idempotency-Key": key, "X-Max-Units": str(units)},
        timeout=30,
    )
    job.raise_for_status()
    job_id = job.json()["id"]
    while True:
        status = requests.get(f"{API}/jobs/{job_id}", headers=HEADERS, timeout=30).json()["status"]
        if status not in ("queued", "running"):
            return job_id, status
        time.sleep(5)


task = {"kind": "reviews", "business_id": "sample-business-id", "limit": 100,
        "review_options": {"sort_by": "newest"}}
units = requests.post(f"{API}/estimate", json=task, headers=HEADERS, timeout=30).json()["units"]
job_id, status = run(task, units)

if status in ("completed", "partial"):
    page = requests.get(
        f"{API}/jobs/{job_id}/results",
        params={"offset": 0, "limit": 100},
        headers=HEADERS,
        timeout=30,
    ).json()
    for review in page["items"]:
        print(review.get("rating"), review.get("review_text"))

    # The next source page is a separate paid task: preview it, then submit
    # its exact task only if you need it.
    preview = requests.get(f"{API}/jobs/{job_id}/continuation", headers=HEADERS, timeout=30).json()
    if preview["available"]:
        run(preview["task"], preview["units"])

Exportformaten

CSV

Opent in elk spreadsheetprogramma. Tekst die begint met =, +, - of @ krijgt een apostrof ervoor, zodat een spreadsheet die niet als formule uitvoert.

Excel (XLSX)

Een werkmap voor Excel of Google Spreadsheets, voor resultaten tot ongeveer 5 MB. Gebruik JSON Lines voor grotere resultaten.

JSON

Het volledige resultaat met de bron en ophaaltijd van elk record en de dekking van de taak.

JSON-regels

Eén review per regel, voor grote bestanden en datapijplijnen.

Kosten en limieten

Bij de Google Maps reviews-scraper reserveert elke pagina van maximaal 100 reviews één eenheid, ongeacht hoeveel reviews die oplevert. Mislukte en geannuleerde taken en taken met een onzekere uitkomst kosten niets. Het lezen, exporteren en combineren van pagina’s die u al hebt, verbruikt geen eenheden.

Een keten van pagina’s voor één bedrijf stopt bij de paginalimiet van uw werkruimte, standaard 20 pagina’s en maximaal 100, of wanneer de gegevensbron geen volgende pagina heeft.

Prijzen

Bronnen

Vragen over de Google Maps reviews-scraper

Documentatie
Is dit de Google Places API?

Nee. MapsScraper.dev is een onafhankelijke dienst en is niet gelieerd aan Google. De resultaten komen van een externe bron van bedrijfsgegevens en gebruiken ons eigen JSON-formaat.

Hoeveel reviews haalt de Google Maps reviews-scraper op voor één bedrijf?

Maximaal 100 reviews per pagina. Elke volgende pagina is een eigen taak met een eigen budget, totdat de gegevensbron geen volgende pagina heeft of de paginalimiet van uw werkruimte is bereikt. Een bedrijf kan meer reviews tonen dan de gegevensbron teruggeeft.

Is Google Maps scraping legaal?

Wij kunnen geen juridisch advies geven. Of het verzamelen en gebruiken van bedrijfsgegevens rechtmatig is, hangt af van waar u bent, wat u verzamelt, waarvoor u het gebruikt en welke voorwaarden gelden. Openbare beschikbaarheid alleen geeft nog geen toestemming om gegevens op te slaan, door te verkopen of mensen te benaderen. Lees ons databeleid

Uw volgende lijst begint met een plek.

Probeer het proces met gemarkeerde voorbeelden en verbind uw werkruimte voor live onderzoek.

Voorbeeld bekijken