ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment vérifier les affirmations de prix des concurrents avec SERP
Tutoriel

Comment vérifier les affirmations de prix des concurrents avec SERP

Vérifiez automatiquement les affirmations de prix des concurrents en recherchant leurs pages de tarification via l'API SERP et en comparant les prix extraits avec vos données internes.

Obtenez une clé API gratuiteDocumentation API

Vous pouvez vérifier les affirmations de prix des concurrents en recherchant leur page de tarification via l'API Scavio, en extrayant les extraits de prix des résultats de recherche et en les comparant à vos données internes pour signaler les affirmations obsolètes ou incorrectes.

Prérequis

  • Python 3.9+
  • Clé API Scavio
  • requests

Parcours

Étape 1: Rechercher la page de tarification d'un concurrent

Utilisez l'opérateur site: pour cibler uniquement le domaine du concurrent.

Python
import requests

API_KEY = "your-scavio-api-key"

def get_pricing_snippets(competitor_domain: str) -> list:
    query = f"site:{competitor_domain} pricing"
    r = requests.post(
        "https://api.scavio.dev/api/v1/search",
        json={"query": query, "num_results": 5},
        headers={"x-api-key": API_KEY},
        timeout=15
    )
    r.raise_for_status()
    results = r.json().get("organic_results", [])
    return [{
        "title": res.get("title"),
        "snippet": res.get("snippet", ""),
        "url": res.get("link")
    } for res in results]

Étape 2: Extraire les mentions de prix des extraits

Utilisez une regex pour extraire les montants en dollars des extraits SERP.

Python
import re

def extract_prices(snippets: list) -> list:
    price_pattern = re.compile(r"\$\d+(?:\.\d+)?(?:/mo|/month|/year|/user)?")
    all_prices = []
    for s in snippets:
        found = price_pattern.findall(s.get("snippet", ""))
        if found:
            all_prices.append({
                "url": s["url"],
                "prices_found": found,
                "snippet": s["snippet"][:200]
            })
    return all_prices

Étape 3: Comparer avec les données de tarification internes

Recoupez les prix extraits avec vos prix concurrents stockés.

Python
from datetime import date

INTERNAL_PRICES = {
    "competitor.com": {"starter": "$29/mo", "pro": "$99/mo"},
    "othercompetitor.com": {"starter": "$49/mo", "pro": "$149/mo"}
}

def verify_prices(domain: str) -> dict:
    snippets = get_pricing_snippets(domain)
    extracted = extract_prices(snippets)
    internal = INTERNAL_PRICES.get(domain, {})
    internal_values = list(internal.values())
    mismatches = []
    for row in extracted:
        for price in row["prices_found"]:
            if internal_values and price not in internal_values:
                mismatches.append({"serp_price": price, "internal": internal_values, "url": row["url"]})
    return {
        "domain": domain,
        "checked_date": str(date.today()),
        "serp_prices": extracted,
        "mismatches": mismatches,
        "status": "stale" if mismatches else "ok"
    }

result = verify_prices("competitor.com")
print(result["status"], result["mismatches"])

Exemple Python

Python
import requests
import re
from datetime import date

API_KEY = "your-scavio-api-key"
COMPETITORS = {
    "tavily.com": {"free": "$0", "standard": "$30/mo", "advanced": "$100/mo"},
    "exa.ai": {"free": "$0", "base": "$7/1k"}
}

def get_snippets(domain):
    r = requests.post(
        "https://api.scavio.dev/api/v1/search",
        json={"query": f"site:{domain} pricing", "num_results": 5},
        headers={"x-api-key": API_KEY}, timeout=15
    )
    r.raise_for_status()
    return r.json().get("organic_results", [])

def extract_prices(results):
    pat = re.compile(r"\$[\d,]+(?:\.\d+)?(?:/(?:mo|month|year|user|1k))?")
    prices = set()
    for res in results:
        prices.update(pat.findall(res.get("snippet", "")))
    return list(prices)

def verify_all():
    report = []
    for domain, known in COMPETITORS.items():
        results = get_snippets(domain)
        found = extract_prices(results)
        known_vals = list(known.values())
        new_prices = [p for p in found if p not in known_vals]
        report.append({"domain": domain, "known": known_vals, "serp": found,
                       "new_prices_detected": new_prices,
                       "status": "check needed" if new_prices else "ok",
                       "date": str(date.today())})
    return report

if __name__ == "__main__":
    for item in verify_all():
        print(f"\n{item['domain']}: {item['status']}")
        print(f"  Known: {item['known']}")
        print(f"  SERP:  {item['serp']}")
        if item["new_prices_detected"]:
            print(f"  ALERT: New prices found: {item['new_prices_detected']}")

Exemple JavaScript

JavaScript
const API_KEY = 'your-scavio-api-key';

async function getPricingSnippets(domain) {
  const res = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json', 'x-api-key': API_KEY },
    body: JSON.stringify({ query: `site:${domain} pricing`, num_results: 5 })
  });
  const data = await res.json();
  return data.organic_results ?? [];
}

function extractPrices(results) {
  const pat = /\$[\d,]+(?:\.\d+)?(?:\/(?:mo|month|year|1k))?/g;
  const prices = new Set();
  for (const r of results) (r.snippet ?? '').match(pat)?.forEach(p => prices.add(p));
  return [...prices];
}

const snippets = await getPricingSnippets('tavily.com');
const prices = extractPrices(snippets);
console.log('Prices found on SERP:', prices);

Sortie attendue

JSON
tavily.com: check needed
  Known: ['$0', '$30/mo', '$100/mo']
  SERP:  ['$0', '$30/mo', '$50/mo', '$100/mo']
  ALERT: New prices found: ['$50/mo']

exa.ai: ok
  Known: ['$0', '$7/1k']
  SERP:  ['$0', '$7/1k']

Tutoriels associés

  • Comment ancrer la sortie d'un LLM avec des données SERP en direct
  • Comment surveiller les positions SERP des concurrents avec une API
  • Comment construire un pipeline d'enrichissement d'e-mail froid

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.9+. Clé API Scavio. requests. 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

Meilleure API pour la surveillance des prix multiplateforme en 2026

Read more
Best Of

Meilleure API de surveillance des concurrents en 2026

Read more
Solution

Surveiller les prix des concurrents sur les marketplaces

Read more
Use Case

Suivi automatisé des prix concurrents

Read more
Glossary

Sémantique des unités de l'API SERP

Read more
Comparison

Semrush API vs Raw SERP API

Read more

Commencer

Vérifiez automatiquement les affirmations de prix des concurrents en recherchant leurs pages de tarification via l'API SERP et en comparant les prix extraits avec vos données internes.

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é