ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Workflows
  3. Workflow de collecte de données SEO local pour les entreprises
Workflow

Workflow de collecte de données SEO local pour les entreprises

Workflow pour collecter des données locales d'entreprises à partir de Google Maps et Google Search pour les audits SEO, l'analyse concurrentielle et la génération de leads.

Commencez gratuitementDocumentation API

Aperçu

Les agences SEO local ont besoin de données commerciales : cohérence NAP, nombre d'avis, notes, catégories et présence concurrentielle. Ce workflow recherche des entreprises sur Google Maps dans une zone cible, enrichit chaque résultat avec les données de Google Search pour vérifier la présence en ligne, et exporte un jeu de données structuré prêt pour les audits SEO ou la qualification de leads. Un pipeline remplace les vérifications manuelles d'annuaires.

Déclencheur

À la demande par engagement client, ou hebdomadaire pour un suivi continu.

Planification

Hebdomadaire

Étapes du workflow

1

Définir la zone cible et les catégories

Définir la zone géographique (ville, code postal) et les catégories d'entreprises à rechercher.

2

Rechercher des entreprises sur Google Maps

Appeler Scavio avec la plateforme google-maps pour trouver les entreprises correspondant aux critères.

3

Extraire les détails des entreprises

Analyser le nom, l'adresse, le téléphone, la note, le nombre d'avis, le site web et la catégorie à partir des résultats Maps.

4

Vérifier la présence en ligne via Google Search

Pour chaque entreprise, effectuer une recherche Google pour vérifier si elle possède un site web réel et son classement.

5

Exporter un jeu de données structuré

Enregistrer les résultats au format CSV ou JSON avec tous les champs d'entreprise, les indicateurs de présence web et les scores d'opportunité SEO.

Implémentation Python

Python
import requests, os, json, csv

API_KEY = os.environ["SCAVIO_API_KEY"]
H = {"x-api-key": API_KEY, "Content-Type": "application/json"}

def search_maps(query: str) -> list:
    resp = requests.post(
        "https://api.scavio.dev/api/v1/search",
        headers=H,
        json={"query": query, "platform": "google-maps"},
        timeout=15,
    )
    return resp.json().get("local_results", [])

def check_web_presence(business_name: str, city: str) -> dict:
    resp = requests.post(
        "https://api.scavio.dev/api/v1/search",
        headers=H,
        json={"query": f"{business_name} {city}", "country_code": "us"},
        timeout=15,
    )
    results = resp.json().get("organic_results", [])
    has_website = any(business_name.lower().replace(" ", "") in r.get("link", "").lower().replace(" ", "") for r in results[:5])
    return {"has_website": has_website, "google_results": len(results)}

def collect_local_data(categories: list, city: str):
    all_businesses = []
    for cat in categories:
        query = f"{cat} in {city}"
        maps_results = search_maps(query)
        for biz in maps_results:
            name = biz.get("title", "")
            web = check_web_presence(name, city)
            all_businesses.append({
                "name": name,
                "address": biz.get("address", ""),
                "phone": biz.get("phone", ""),
                "rating": biz.get("rating", ""),
                "reviews": biz.get("reviews", 0),
                "category": cat,
                "has_website": web["has_website"],
                "google_results": web["google_results"],
            })
    return all_businesses

businesses = collect_local_data(["plumber", "dentist", "accountant"], "Austin TX")
print(f"Collected {len(businesses)} businesses")
no_website = [b for b in businesses if not b["has_website"]]
print(f"Without website: {len(no_website)} (lead opportunities)")

Implémentation JavaScript

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};

async function searchMaps(query) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:H, body:JSON.stringify({query, platform:'google-maps'})});
  return (await r.json()).local_results || [];
}

async function checkWebPresence(businessName, city) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:H, body:JSON.stringify({query:businessName+' '+city, country_code:'us'})});
  const results = (await r.json()).organic_results || [];
  const hasWebsite = results.slice(0,5).some(r=>(r.link||'').toLowerCase().replace(/ /g,'').includes(businessName.toLowerCase().replace(/ /g,'')));
  return {hasWebsite, googleResults:results.length};
}

async function collectLocalData(categories, city) {
  const all = [];
  for (const cat of categories) {
    const mapsResults = await searchMaps(cat+' in '+city);
    for (const biz of mapsResults) {
      const name = biz.title || '';
      const web = await checkWebPresence(name, city);
      all.push({name, address:biz.address||'', phone:biz.phone||'', rating:biz.rating||'', reviews:biz.reviews||0, category:cat, hasWebsite:web.hasWebsite, googleResults:web.googleResults});
    }
  }
  return all;
}

const businesses = await collectLocalData(['plumber','dentist','accountant'], 'Austin TX');
console.log('Collected '+businesses.length+' businesses');
const noWebsite = businesses.filter(b=>!b.hasWebsite);
console.log('Without website: '+noWebsite.length+' (lead opportunities)');

Plateformes utilisées

Google Maps

Recherche d'entreprises locales avec notes et coordonnées

Google

Recherche web avec graphe de connaissances, PAA et aperçus IA

Questions fréquentes

Les agences SEO local ont besoin de données commerciales : cohérence NAP, nombre d'avis, notes, catégories et présence concurrentielle. Ce workflow recherche des entreprises sur Google Maps dans une zone cible, enrichit chaque résultat avec les données de Google Search pour vérifier la présence en ligne, et exporte un jeu de données structuré prêt pour les audits SEO ou la qualification de leads. Un pipeline remplace les vérifications manuelles d'annuaires.

Ce workflow utilise un à la demande par engagement client, ou hebdomadaire pour un suivi continu.. Hebdomadaire.

Ce workflow utilise les plateformes Scavio suivantes : google-maps, google. Chaque plateforme est appelée via le même point de terminaison API unifié.

Oui. L'offre gratuite de Scavio comprend 50 crédits à l'inscription sans carte bancaire. Cela suffit pour tester et valider ce workflow avant de le passer à l'échelle.

Workflow de collecte de données SEO local pour les entreprises

Workflow pour collecter des données locales d'entreprises à partir de Google Maps et Google Search pour les audits SEO, l'analyse concurrentielle et la génération de leads.

Obtenez votre clé APILire 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é