Erklärt
Suchmaschinenergebnisseiten (SERPs) enthalten eine dichte Schicht strukturierter Daten: organische Einträge (mit Positionen, Titeln, URLs, Beschreibungen), Anzeigen (oben und unten), Featured Snippets, Knowledge Panels, Bild- und Videopakete, lokale Pakete und Maps-Ergebnisse, verwandte Suchanfragen sowie 'Nutzer fragen auch'-Boxen. SERP-Scraping ist die Disziplin, all das programmatisch zu extrahieren.
Die wichtigsten Anwendungsfälle sind SEO-Monitoring (Verfolgung der eigenen Rankings und der Wettbewerber über Tausende von Keywords), Wettbewerbsanalyse (welche Konkurrenten bieten auf welche Keywords mit welchen Anzeigentexten) sowie die Analyse von Suchfunktionen (wann zeigt Google ein Featured Snippet für eine bestimmte Suchanfrage, und wer besitzt es). Viele bekannte Tools -- Ahrefs, SEMrush, Sistrix, SERanking -- basieren auf groß angelegten SERP-Scraping-Pipelines.
Die operative Herausforderung ist zweigeteilt. Suchmaschinen (insbesondere Google) drosseln aggressiv und zeigen CAPTCHAs bei Scrapern mit hohem Anfragevolumen. Zudem sind SERP-Ergebnisse stark nach Geografie personalisiert -- die SERP für 'beste Laufschuhe' in New York unterscheidet sich von der SERP in Tokio. Produktives SERP-Scraping erfordert geo-zielgerichtete Residential-Proxys, sorgfältige Fingerabdruckhygiene und Rotationsstrategien, die auf das Rate-Limit-Verhalten jeder Suchmaschine abgestimmt sind.
So funktioniert es
Ein SERP-Scraper sendet eine Suchanfrage an den Suchendpunkt der Suchmaschine (z. B. `https://www.google.com/search?q=...&gl=us&hl=en`), häufig mit expliziten Länder- (`gl`) und Sprachparametern (`hl`). Die Anfrage wird über einen Residential-Proxy im Zielland geleitet, damit die Suchmaschine das geografisch korrekte SERP zurückgibt. Das HTML der Antwort (oder JSON bei bestimmten Structured-Data-Endpunkten) wird in organische Treffer, Anzeigen und Feature-Cards aufgeteilt, jeweils mit ihrer Position auf der Seite.
Für große Mengen verwendet der Scraper pro Anfrage eine neue Residential-IP, hält Abstände von mehreren Sekunden zwischen den Anfragen ein und sendet moderne Chrome-ähnliche Header. Wenn eine CAPTCHA- oder Rate-Limit-Seite zurückgegeben wird, rotiert der Scraper die IPs und wiederholt die Anfrage.