ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment agréger les avis produits de plusieurs sources
Tutoriel

Comment agréger les avis produits de plusieurs sources

Construire un pipeline d'agrégation d'avis en Python qui collecte les avis produits d'Amazon et de Google en utilisant l'API Scavio et calcule un score de sentiment unifié.

Obtenez une clé API gratuiteDocumentation API

Une seule source d'avis peut être biaisée ou avoir une couverture limitée. L'agrégation des avis d'Amazon (acheteurs vérifiés) et de Google (avis éditoriaux et utilisateurs du web) donne une image plus représentative de la réception d'un produit. Ce tutoriel construit un pipeline d'agrégation d'avis utilisant l'API Scavio qui collecte les avis de multiples sources, normalise les notes sur une échelle de 5 points et calcule un score agrégé pondéré.

Prérequis

  • Python 3.8 ou supérieur
  • bibliothèque requests installée
  • Une clé API Scavio
  • Compréhension des statistiques de base

Parcours

Étape 1: Récupérer les avis Amazon

Interroger le point de terminaison Amazon de Scavio pour un produit et extraire son tableau d'avis et sa note moyenne.

Python
def amazon_reviews(asin: str) -> dict:
    r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY},
                      json={"platform": "amazon", "query": asin, "marketplace": "US"})
    r.raise_for_status()
    data = r.json()
    return {"rating": data.get("product", {}).get("rating"), "reviews": data.get("reviews", [])}

Étape 2: Récupérer les signaux d'avis Google

Rechercher sur Google des avis sur le produit et extraire les extraits contenant des mentions de notes.

Python
def google_review_signals(product_name: str) -> list[str]:
    r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY},
                      json={"query": f"{product_name} review rating", "country_code": "us"})
    r.raise_for_status()
    results = r.json().get("organic_results", [])
    return [r.get("snippet", "") for r in results if r.get("snippet")]

Étape 3: Calculer la note agrégée

Faire la moyenne des notes des avis Amazon pour produire un score pondéré.

Python
def aggregate_rating(reviews: list[dict]) -> float | None:
    ratings = [r["rating"] for r in reviews if r.get("rating")]
    if not ratings:
        return None
    return round(sum(ratings) / len(ratings), 2)

Étape 4: Construire le rapport agrégé

Combiner la note et le nombre d'avis Amazon avec les signaux d'avis Google en un rapport produit unifié.

Python
def aggregate_report(product: str, asin: str) -> dict:
    amazon = amazon_reviews(asin)
    signals = google_review_signals(product)
    agg = aggregate_rating(amazon["reviews"])
    return {
        "product": product,
        "amazon_avg_rating": amazon.get("rating"),
        "review_count": len(amazon["reviews"]),
        "aggregate_score": agg,
        "google_signals": signals[:3],
    }

Exemple Python

Python
import os
import requests

API_KEY = os.environ.get("SCAVIO_API_KEY", "your_scavio_api_key")
ENDPOINT = "https://api.scavio.dev/api/v1/search"

def call(body): 
    r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY}, json=body)
    r.raise_for_status()
    return r.json()

def aggregate(product: str, asin: str) -> dict:
    amazon_data = call({"platform": "amazon", "query": asin, "marketplace": "US"})
    google_data = call({"query": f"{product} review", "country_code": "us"})
    reviews = amazon_data.get("reviews", [])
    ratings = [r["rating"] for r in reviews if r.get("rating")]
    avg = round(sum(ratings) / len(ratings), 2) if ratings else None
    return {
        "amazon_rating": amazon_data.get("product", {}).get("rating"),
        "computed_avg": avg,
        "review_count": len(reviews),
        "google_snippets": [r.get("snippet") for r in google_data.get("organic_results", [])[:3] if r.get("snippet")]
    }

if __name__ == "__main__":
    import json
    print(json.dumps(aggregate("Sony WH-1000XM5", "B09XS7JWHH"), indent=2))

Exemple JavaScript

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY || "your_scavio_api_key";
const ENDPOINT = "https://api.scavio.dev/api/v1/search";

async function call(body) {
  const res = await fetch(ENDPOINT, {
    method: "POST",
    headers: { "x-api-key": API_KEY, "Content-Type": "application/json" },
    body: JSON.stringify(body)
  });
  return res.json();
}

async function aggregate(product, asin) {
  const [amazon, google] = await Promise.all([
    call({ platform: "amazon", query: asin, marketplace: "US" }),
    call({ query: `${product} review`, country_code: "us" })
  ]);
  const reviews = amazon.reviews || [];
  const ratings = reviews.map(r => r.rating).filter(Boolean);
  const avg = ratings.length ? Math.round(ratings.reduce((a, b) => a + b) / ratings.length * 100) / 100 : null;
  return { amazonRating: amazon.product?.rating, computedAvg: avg, reviewCount: reviews.length };
}

aggregate("Sony WH-1000XM5", "B09XS7JWHH").then(console.log).catch(console.error);

Sortie attendue

JSON
{
  "product": "Sony WH-1000XM5",
  "amazon_avg_rating": "4.8",
  "review_count": 47,
  "aggregate_score": 4.72,
  "google_signals": [
    "The WH-1000XM5 earns our top rating for premium noise-canceling headphones...",
    "5/5 stars. Sony has once again set the bar for consumer audio..."
  ]
}

Tutoriels associés

  • Comment obtenir les avis de produits Amazon via API
  • Comment construire un agent de recherche de produits multi-sources

Questions fréquentes

La plupart des développeurs terminent ce tutoriel en 15 à 30 minutes. Vous aurez besoin d'une clé API Scavio (l'offre gratuite suffit) et d'un environnement Python ou JavaScript fonctionnel.

Python 3.8 ou supérieur. bibliothèque requests installée. Une clé API Scavio. Compréhension des statistiques de base. Une clé API Scavio vous donne 50 crédits gratuits à l'inscription.

Oui. L'offre gratuite comprend 50 crédits à l'inscription, ce qui est largement suffisant pour terminer ce tutoriel et prototyper une solution fonctionnelle.

Scavio dispose d'un package natif LangChain (langchain-scavio), d'un serveur MCP et d'une API REST simple qui fonctionne avec tout client HTTP. Ce tutoriel utilise the raw REST API, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Best Of

Meilleures API produits Amazon pour remplacer les scrapers (2026)

Read more
Best Of

Meilleure API Amazon Product en 2026

Read more
Use Case

Agrégation de données multi-sources pour le trading IA

Read more
Use Case

Migration d'Amazon Scraper vers l'API

Read more
Glossary

API de données produits Amazon

Read more
Solution

Surveiller les avis Google via l'API SERP au lieu du scraping

Read more

Commencer

Construire un pipeline d'agrégation d'avis en Python qui collecte les avis produits d'Amazon et de Google en utilisant l'API Scavio et calcule un score de sentiment unifié.

Obtenez une clé API gratuiteLire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité