ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment automatiser la découverte de prospects locaux avec une API de recherche
Tutoriel

Comment automatiser la découverte de prospects locaux avec une API de recherche

Construisez un pipeline automatisé de découverte de prospects locaux en utilisant la recherche Google Maps via l'API Scavio. Trouvez des entreprises par emplacement, catégorie et signaux.

Obtenez une clé API gratuiteDocumentation API

Automatisez la découverte de prospects locaux en interrogeant Google Maps via une API de recherche pour trouver des entreprises correspondant à vos critères cibles dans des zones géographiques spécifiques. La recherche manuelle de prospects sur Google Maps est fastidieuse et ne passe pas à l'échelle au-delà de quelques codes postaux. Ce tutoriel construit un pipeline qui prend une catégorie d'entreprise et une liste de lieux, interroge le point de terminaison de recherche Google de Scavio avec une intention locale, et produit une liste structurée de prospects avec nom, adresse, téléphone et site Web. Il couvre le traitement par lots, la déduplication et l'exportation vers CSV.

Prérequis

  • Python 3.8+ installé
  • bibliothèques requests et csv (les deux dans la stdlib Python sauf requests)
  • Une clé API Scavio depuis scavio.dev
  • Une liste d'emplacements cibles et de catégories d'entreprises

Parcours

Étape 1: Définir les emplacements et catégories cibles

Configurer la matrice de recherche des types d'entreprises et des zones géographiques que vous souhaitez prospecter.

Python
import os, requests, csv

API_KEY = os.environ['SCAVIO_API_KEY']

CATEGORIES = ['plumber', 'hvac contractor', 'roofing company']
LOCATIONS = ['Austin TX', 'Denver CO', 'Nashville TN']

def build_queries(categories: list, locations: list) -> list:
    queries = []
    for cat in categories:
        for loc in locations:
            queries.append(f'{cat} in {loc}')
    return queries

print(f'Generated {len(build_queries(CATEGORIES, LOCATIONS))} search queries')

Étape 2: Rechercher et extraire les données des entreprises locales

Interroger Scavio avec une intention locale et analyser les listes d'entreprises à partir des résultats.

Python
def search_local_leads(query: str) -> list:
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'platform': 'google', 'query': query}, timeout=15)
    resp.raise_for_status()
    data = resp.json()
    leads = []
    for r in data.get('local_results', data.get('organic_results', [])):
        leads.append({
            'name': r.get('title', ''),
            'address': r.get('address', ''),
            'phone': r.get('phone', ''),
            'website': r.get('link', ''),
            'rating': r.get('rating', ''),
            'query': query,
        })
    return leads

Étape 3: Dédupliquer entre les requêtes

Supprimer les entreprises en double apparaissant dans plusieurs requêtes en faisant correspondre le nom et le numéro de téléphone.

Python
def deduplicate_leads(all_leads: list) -> list:
    seen = set()
    unique = []
    for lead in all_leads:
        key = (lead['name'].lower().strip(), lead.get('phone', ''))
        if key not in seen:
            seen.add(key)
            unique.append(lead)
    return unique

def collect_all_leads(queries: list) -> list:
    all_leads = []
    for q in queries:
        leads = search_local_leads(q)
        all_leads.extend(leads)
        print(f'{q}: {len(leads)} leads')
    return deduplicate_leads(all_leads)

Étape 4: Exporter vers CSV

Écrire les prospects dédupliqués dans un fichier CSV prêt à être importé dans votre CRM ou outil de prospection.

Python
def export_csv(leads: list, filename: str = 'local_leads.csv'):
    if not leads:
        print('No leads to export')
        return
    fields = ['name', 'address', 'phone', 'website', 'rating', 'query']
    with open(filename, 'w', newline='') as f:
        writer = csv.DictWriter(f, fieldnames=fields)
        writer.writeheader()
        writer.writerows(leads)
    print(f'Exported {len(leads)} leads to {filename}')

queries = build_queries(CATEGORIES, LOCATIONS)
leads = collect_all_leads(queries)
export_csv(leads)

Exemple Python

Python
import requests, os, csv
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def find_leads(category, location):
    data = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': f'{category} in {location}'}).json()
    return [{'name': r.get('title', ''), 'url': r.get('link', '')}
        for r in data.get('local_results', data.get('organic_results', []))]

for lead in find_leads('plumber', 'Austin TX'):
    print(lead['name'])

Exemple JavaScript

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function findLeads(category, location) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: H,
    body: JSON.stringify({platform: 'google', query: `${category} in ${location}`})
  });
  const data = await r.json();
  return (data.local_results || data.organic_results || []).map(r => ({name: r.title, url: r.link}));
}
findLeads('plumber', 'Austin TX').then(leads => leads.forEach(l => console.log(l.name)));

Sortie attendue

JSON
A CSV file of deduplicated local business leads with name, address, phone, website, and rating, collected from Google Maps results across multiple locations.

Tutoriels associés

  • Comment construire un pipeline de prospection PME de Google Maps à l'email
  • Comment construire un pipeline de prospection pour agence

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+ installé. bibliothèques requests et csv (les deux dans la stdlib Python sauf requests). Une clé API Scavio depuis scavio.dev. Une liste d'emplacements cibles et de catégories d'entreprises. 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 Google Maps pour l'extraction de leads en 2026

Read more
Best Of

Meilleures API de données commerciales Google Maps (Mai 2026)

Read more
Solution

Enrichissez vos campagnes d'e-mails froids avec les données commerciales de Google Maps

Read more
Use Case

Génération de leads pour agences locales via Google Maps

Read more
Solution

Extraire des prospects d'entreprises locales depuis Google Maps via n8n

Read more
Use Case

Génération de leads locaux Google Maps

Read more

Commencer

Construisez un pipeline automatisé de découverte de prospects locaux en utilisant la recherche Google Maps via l'API Scavio. Trouvez des entreprises par emplacement, catégorie et signaux.

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é