Google Reviews Integration
Vartovii nutzt Google Reviews, um Mitarbeiter- und Kundenfeedback über Unternehmen zu sammeln.
Funktionsweise
sequenceDiagram
participant User
participant API
participant SerpAPI
participant Google Maps
User->>API: /api/google-reviews/{company}
API->>SerpAPI: Search for place ID
SerpAPI->>Google Maps: Query google_maps engine
Google Maps-->>SerpAPI: Place results
SerpAPI-->>API: data_id
API->>SerpAPI: Fetch reviews (paginated)
SerpAPI->>Google Maps: Query google_maps_reviews
Google Maps-->>SerpAPI: Reviews data
SerpAPI-->>API: Reviews JSON
API-->>User: Normalized reviews
API Endpunkt
GET /api/google-reviews/{company_name}
Parameter
| Parameter | Typ | Beschreibung | Standardwert |
|---|---|---|---|
company_name | string | Firmenname zur Suche | required |
country | string | Ländercode (de, ch, us, uk) | "de" |
max_reviews | int | Maximale Anzahl abzurufender Rezensionen | 20 |
Antwort
{
"success": true,
"company": "Google Switzerland",
"reviews": [
{
"id": "google--1234567890",
"source": "google",
"author": "John Doe",
"rating": 4.0,
"text": "Great workplace...",
"date": "2 months ago",
"sentiment": "positive"
}
],
"summary": {
"total_reviews": 5,
"average_rating": 4.2,
"positive_count": 4,
"negative_count": 1
}
}
Technische Details
SerpAPI Integration
- Engine:
google_maps_reviews - Pagination: Automatisch über
next_page_token - Quota: 100 Anfragen/Monat (kostenlose Stufe)
- Cost: Jede Seite (10 Rezensionen) = 1 Credit
Sprachunterstützung
| Ländercode | Sprache | hl Parameter |
|---|---|---|
| de, at, ch | German | de |
| us, uk, gb | English | en |
| fr | French | fr |
| ua | Ukrainian | uk |
Code-Speicherort
- Harvester:
vartovii/scrapers/google_reviews_harvester.py - SerpAPI Client:
vartovii/scrapy_services/serpapi_client.py - API Router:
backend/routers/corporate.py
Anwendungsbeispiel
from vartovii.scrapers.google_reviews_harvester import get_google_reviews_harvester
harvester = get_google_reviews_harvester()
# Check availability
if harvester.is_available():
result = harvester.harvest(
company_name="Google Switzerland",
country="ch",
max_reviews=20
)
print(f"Found {len(result['reviews'])} reviews")
Hinzugefügt in v3.2.12 (Januar 2026)