Skip to content

Scrapen Sie Google Trends-Daten mit Python oder der Bright Data API. Erhalten Sie Suchtrends in Echtzeit, filtern Sie nach Standort, Kategorie und Zeitraum und skalieren Sie mühelos.

Notifications You must be signed in to change notification settings

bright-data-de/google-trends-api

Repository files navigation

Google Trends Scraper API

Promo

Dieses Repository bietet zwei Ansätze zum Sammeln von Google Trends-Daten:

  1. Kostenloser Scraper: Eine leichtgewichtige Lösung für kleine Projekte, Tests, persönliche Recherchen und Bildungszwecke.
  2. Bright Data Google Trends Scraper API: Eine robuste Lösung mit hohem Volumen für unternehmensweite, skalierbare und zuverlässige Datenextraktion.

Table of Contents

Free Scraper

bright-data-google-trends-api-screenshot-google-trends-page

Ein einfacher Google Trends Scraper für Datenerfassungsprojekte im kleinen Maßstab.

Setup

Anforderungen:

  • Python 3.9+
  • Playwright (für Browser-Automatisierung)

Installation:

pip install playwright
playwright install

Neu im Web-Scraping? Folgen Sie unserem Einsteigerleitfaden für Web-Scraping mit Python

Quick Start

  1. Bearbeiten Sie diese Variablen in google-trends-scraper.py:
query = "cryptocurrency"  # Your search term
geo = "US"                # Country code
hl = "en-US"              # Language code
  1. Führen Sie das Skript aus

💡 Pro Tip: Setzen Sie HEADLESS = False, um die Erkennung durch Googles Anti-Scraping-Systeme zu reduzieren.

Sample Output

{
    "geoCode": "US-DC",
    "geoName": "District of Columbia",
    "value": [100],
    "formattedValue": ["100"],
    "maxValueIndex": 0,
    "hasData": [true],
}

👉 Sehen Sie sich die vollständige JSON-Ausgabe an.

Limitations

Der kostenlose Scraper bringt Einschränkungen mit sich:

  • Hohes Risiko von IP-Sperren
  • Begrenztes Anfragevolumen
  • Häufige CAPTCHA
  • Unzuverlässig für Scraping in großem Maßstab

Für zuverlässiges Scraping in großem Maßstab benötigen Sie eine fortschrittlichere Lösung.

Bright Data Enterprise Solution

Bright Data's Google Trends API stellt strukturierte Google Trends-Daten mit anpassbaren Such-Parametern bereit. Auf derselben fortschrittlichen Technologie wie die SERP API aufgebaut, bietet sie:

  • Globale Standortgenauigkeit: Passen Sie Ergebnisse an jeden Standort an
  • Pay-Per-Success Model: Zahlen Sie nur für erfolgreiche Anfragen
  • Echtzeitdaten: Rufen Sie aktuelle Suchergebnisse in Sekunden ab
  • Skalierbarkeit: Verarbeiten Sie unbegrenzte Anfragen ohne Volumenbeschränkungen
  • Kosteneffizienz: Sparen Sie Infrastruktur- und Wartungskosten
  • Höchste Zuverlässigkeit: Konsistente Performance mit integrierten Anti-Blocking-Maßnahmen
  • Technischer Support: Fachkundige Unterstützung, wenn sie benötigt wird

Getting Started

  1. Voraussetzungen:
  2. Setup: Folgen Sie unserer Schritt-für-Schritt-Anleitung zur Integration der API
  3. Implementierungsmethoden:
    • Direkter API-Zugriff
    • Nativer Proxy-basierter Zugriff

Direct API Access

Senden Sie eine direkte Anfrage an den API-Endpunkt:

cURL Example:

curl https://api.brightdata.com/request \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer API_TOKEN" \
  -d '{
        "zone": "ZONE_NAME",
        "url": "https://trends.google.com/trends/explore?q=coffee&geo=GB&brd_trends=timeseries,geo_map&brd_json=1",
        "format": "raw"
      }'

Python Example:

import requests
import json

url = "https://api.brightdata.com/request"
headers = {"Content-Type": "application/json", "Authorization": "Bearer API_TOKEN"}

payload = {
    "zone": "ZONE_NAME",
    "url": "https://trends.google.com/trends/explore?q=coffee&geo=GB&brd_trends=timeseries,geo_map&brd_json=1",
    "format": "raw",
}

response = requests.post(url, headers=headers, json=payload)

with open("serp_direct_api.json", "w") as file:
    json.dump(response.json(), file, indent=4)

print("Response saved to 'serp_direct_api.json'.")

👉 Sehen Sie sich die vollständige JSON-Ausgabe an.

Note: Verwenden Sie brd_json=1 für geparstes JSON. Zusätzliche Parameter wie geo und brd_trends werden unten im Abschnitt Advanced Features erläutert.

Native Proxy-Based Access

Sie können auch unsere Proxy-Routing-Methode verwenden:

cURL Example:

curl -i \
  --proxy brd.superproxy.io:33335 \
  --proxy-user "brd-customer-<customer-id>-zone-<zone-name>:<zone-password>" \
  -k \
  "https://trends.google.com/trends/explore?q=coffee&geo=GB&brd_trends=timeseries,geo_map&brd_json=1"

Python Example:

import requests
import urllib3

urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

host = "brd.superproxy.io"
port = 33335
username = "brd-customer-<customer-id>-zone-<zone-name>"
password = "<zone-password>"
proxy_url = f"http://{username}:{password}@{host}:{port}"

proxies = {"http": proxy_url, "https": proxy_url}
url = "https://trends.google.com/trends/explore?q=coffee&geo=GB&brd_trends=timeseries,geo_map&brd_json=1"
response = requests.get(url, proxies=proxies, verify=False)

with open("serp_native_proxy.json", "w", encoding="utf-8") as file:
    file.write(response.text)

print("Response saved to 'serp_native_proxy.json'.")

👉 Sehen Sie sich die vollständige JSON-Ausgabe an.

Note: Für Produktionsumgebungen laden Sie das SSL-Zertifikat von Bright Data, wie in unserem SSL Certificate Guide beschrieben.

Advanced Features

Widgets

bright-data-google-trends-api-screenshot-timeseries-and-geomap

Google Trends stellt verschiedene Widgets bereit, um aussagekräftige Erkenntnisse zu extrahieren. Sie können mit dem Parameter brd_trends angeben, welche Widgets Sie verwenden möchten:

Verfügbare Widgets:

  • timeseries → Interesse im Zeitverlauf
  • geo_map → Interesse nach Unterregion

Mehrere Widgets verwenden:

Sie können mehrere Widgets kombinieren, indem Sie sie durch ein Komma trennen:

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=ChatGPT&geo=US&brd_trends=timeseries,geo_map&brd_json=1"

Geographic Filtering

Der Parameter geo ermöglicht es Ihnen, Suchtrenddaten für ein bestimmtes Land zu filtern (z. B. geo=US für die Vereinigten Staaten). Wenn er weggelassen wird, verwendet die API standardmäßig globale Trends.

Example:

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=coffee&geo=GB&brd_trends=timeseries,geo_map&brd_json=1"

Localization

bright-data-google-trends-api-screenshot-set-language

Der Parameter hl ermöglicht es Ihnen, Suchtrenddaten in einer bestimmten Sprache abzurufen:

  • Er akzeptiert einen Sprachcode (z. B. en-US, fr-FR)
  • Dies beeinflusst die Sprache der zurückgegebenen Daten, nicht die tatsächlichen Suchergebnisse

Example:

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=coffee&hl=fr-FR&brd_trends=timeseries,geo_map&brd_json=1"

Time Range

Der Parameter date definiert einen bestimmten Zeitraum zum Abrufen von Trenddaten:

Value Time Range
now 1-H Letzte 1 Stunde
now 4-H Letzte 4 Stunden
now 1-d Letzter Tag (24 Stunden)
now 7-d Letzte 7 Tage
today 1-m Letzte 30 Tage
today 3-m Letzte 90 Tage
today 12-m Letzte 12 Monate (Standard)
today 5-y Letzte 5 Jahre
YYYY-MM-DD YYYY-MM-DD Benutzerdefinierter Datumsbereich

Example for Past 30 Days:

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=coffee&date=today+1-m&brd_trends=timeseries,geo_map&brd_json=1"

Example for Custom Date Range:

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=coffee&date=2025-01-02+2025-03-03&brd_trends=timeseries,geo_map&brd_json=1"

Category Filtering

Der Parameter cat ermöglicht es Ihnen, Suchtrends innerhalb einer bestimmten Kategorie einzugrenzen:

  • Standardmäßig sucht Google Trends über alle Kategorien hinweg
  • Kategorien werden durch numerische IDs dargestellt
  • Die vollständige Liste der Kategorien-IDs finden Sie auf Google Trends

Beispiel – Trends für „Bitcoin“ in der Kategorie Business & Industrial abrufen (cat=12):

curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=bitcoin&cat=12&brd_trends=timeseries,geo_map&brd_json=1"

Search Type

Der Parameter gprop (Google Property) filtert Suchtrends nach bestimmten Google-Diensten:

Value Google Property
images Google Images
news Google News
froogle Google Shopping
youtube YouTube Search

Wenn er weggelassen wird, ist die Standardeinstellung eine Websuche.

Examples:

  1. Image Search Trends (gprop=images):
curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=nft+art&gprop=images&brd_trends=timeseries,geo_map&brd_json=1"
  1. News Search Trends (gprop=news):
curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=AI+advancements&gprop=news&brd_trends=timeseries,geo_map&brd_json=1"
  1. YouTube Search Trends (gprop=youtube):
curl --proxy brd.superproxy.io:33335 \
  --proxy-user brd-customer-<customer-id>-zone-<zone-name>:<zone-password> \
  -k "https://trends.google.com/trends/explore?q=python+tutorials&gprop=youtube&brd_trends=timeseries,geo_map&brd_json=1"

Support & Resources

About

Scrapen Sie Google Trends-Daten mit Python oder der Bright Data API. Erhalten Sie Suchtrends in Echtzeit, filtern Sie nach Standort, Kategorie und Zeitraum und skalieren Sie mühelos.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages