ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment constituer une liste de prospects Google Maps avec une API
Tutoriel

Comment constituer une liste de prospects Google Maps avec une API

Extraire des prospects d'entreprises locales des résultats de recherche Google Maps en utilisant l'API de recherche Scavio. Obtenez le nom, l'adresse, le téléphone et la note de l'entreprise sous forme de JSON structuré.

Obtenez une clé API gratuiteDocumentation API

Vous pouvez extraire des données d'entreprises locales depuis le pack local de Google en recherchant service + localisation via l'API Scavio et en analysant le champ local_results, qui renvoie des listes d'entreprises structurées sans scraping.

Prérequis

  • Python 3.9+
  • Clé API Scavio

Parcours

Étape 1: Rechercher des entreprises locales

Inclure la localisation dans la requête. L'API renvoie un tableau local_results avec des données d'entreprise structurées.

Python
import requests

API_KEY = "your-scavio-api-key"

def search_local(service: str, location: str, num_results: int = 10) -> dict:
    query = f"{service} in {location}"
    r = requests.post(
        "https://api.scavio.dev/api/v1/search",
        json={"query": query, "num_results": num_results},
        headers={"x-api-key": API_KEY},
        timeout=20
    )
    r.raise_for_status()
    return r.json()

data = search_local("plumbers", "Austin TX")
local_results = data.get("local_results", [])
print(f"Found {len(local_results)} local businesses")
for biz in local_results:
    print(biz.get("title"), biz.get("phone"), biz.get("rating"))

Étape 2: Analyser les champs de prospects structurés

Extraire tous les champs d'entreprise disponibles des résultats du pack local.

Python
def extract_leads(local_results: list) -> list:
    leads = []
    for biz in local_results:
        leads.append({
            "name":       biz.get("title"),
            "address":    biz.get("address"),
            "phone":      biz.get("phone"),
            "website":    biz.get("website"),
            "rating":     biz.get("rating"),
            "reviews":    biz.get("reviews"),
            "hours":      biz.get("hours"),
            "category":   biz.get("type"),
            "maps_url":   biz.get("link")
        })
    return leads

Étape 3: Exporter en CSV

Écrire la liste de prospects dans un fichier CSV pour utilisation dans un CRM ou un outil de prospection.

Python
import csv

def export_leads_csv(leads: list, filename: str):
    if not leads:
        print("No leads to export")
        return
    fields = ["name", "address", "phone", "website", "rating", "reviews", "category"]
    with open(filename, "w", newline="", encoding="utf-8") as f:
        writer = csv.DictWriter(f, fieldnames=fields, extrasaction="ignore")
        writer.writeheader()
        writer.writerows(leads)
    print(f"Exported {len(leads)} leads to {filename}")

# Full run
data = search_local("plumbers", "Austin TX")
leads = extract_leads(data.get("local_results", []))
export_leads_csv(leads, "austin_plumbers.csv")

Étape 4: Construire une liste de prospects multi-villes

Parcourir les villes et les services pour générer une grande base de données de prospects.

Python
SERVICES = ["plumbers", "electricians", "HVAC companies"]
CITIES = ["Austin TX", "Dallas TX", "Houston TX"]
all_leads = []

for service in SERVICES:
    for city in CITIES:
        data = search_local(service, city)
        leads = extract_leads(data.get("local_results", []))
        for lead in leads:
            lead["service"] = service
            lead["city"] = city
        all_leads.extend(leads)
        print(f"{service} in {city}: {len(leads)} leads")

print(f"\nTotal leads: {len(all_leads)}")
export_leads_csv(all_leads, "home_services_leads.csv")

Exemple Python

Python
import requests
import csv
from datetime import date

API_KEY = "your-scavio-api-key"

def search_local(service: str, location: str) -> list:
    r = requests.post(
        "https://api.scavio.dev/api/v1/search",
        json={"query": f"{service} in {location}", "num_results": 10},
        headers={"x-api-key": API_KEY},
        timeout=20
    )
    r.raise_for_status()
    return r.json().get("local_results", [])

def build_lead_list(services: list, cities: list) -> list:
    leads = []
    for service in services:
        for city in cities:
            results = search_local(service, city)
            for biz in results:
                leads.append({
                    "name": biz.get("title"),
                    "address": biz.get("address"),
                    "phone": biz.get("phone"),
                    "website": biz.get("website"),
                    "rating": biz.get("rating"),
                    "reviews": biz.get("reviews"),
                    "service": service,
                    "city": city
                })
            print(f"{service} / {city}: {len(results)} leads")
    return leads

def export_csv(leads: list, path: str):
    fields = ["name","address","phone","website","rating","reviews","service","city"]
    with open(path, "w", newline="", encoding="utf-8") as f:
        w = csv.DictWriter(f, fieldnames=fields, extrasaction="ignore")
        w.writeheader()
        w.writerows(leads)

if __name__ == "__main__":
    leads = build_lead_list(
        services=["plumbers", "electricians"],
        cities=["Austin TX", "Dallas TX"]
    )
    path = f"leads_{date.today()}.csv"
    export_csv(leads, path)
    print(f"\nExported {len(leads)} leads to {path}")

Exemple JavaScript

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

async function searchLocal(service, location) {
  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: `${service} in ${location}`, num_results: 10 })
  });
  const data = await res.json();
  return data.local_results ?? [];
}

const leads = await searchLocal('plumbers', 'Austin TX');
for (const biz of leads) {
  console.log(`${biz.title} | ${biz.phone} | Rating: ${biz.rating} (${biz.reviews})`);
}

Sortie attendue

JSON
plumbers / Austin TX: 8 leads
plumbers / Dallas TX: 10 leads
electricians / Austin TX: 9 leads
electricians / Dallas TX: 10 leads

Exported 37 leads to leads_2026-05-22.csv

Sample row:
Austin Plumbing Co | 512-555-0199 | 123 Main St Austin TX | Rating: 4.8 (342 reviews)

Tutoriels associés

  • Comment enrichir des leads avec une API de recherche dans n8n
  • Comment construire un pipeline d'enrichissement d'e-mail froid
  • Comment vérifier les affirmations de prix des concurrents avec SERP

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. 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
Use Case

Génération de leads locaux Google Maps

Read more
Use Case

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

Read more
Solution

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

Read more
Solution

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

Read more

Commencer

Extraire des prospects d'entreprises locales des résultats de recherche Google Maps en utilisant l'API de recherche Scavio. Obtenez le nom, l'adresse, le téléphone et la note de l'entreprise sous forme de JSON structuré.

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é