Extraire les données de Google Maps avec l'API JavaScript : Guide complet
Google Maps détient l'une des plus grandes bases de données publiques d'informations commerciales sur la planète. Chaque recherche renvoie une liste d'entreprises avec adresses, numéros de téléphone, sites web, évaluations et avis. Si vous souhaitez extraire des données de Google Maps avec l'API JavaScript à grande échelle, ce guide vous explique les étapes exactes — de la configuration de votre clé API à l'exécution de trois exemples fonctionnels.
À la fin, vous saurez comment géocoder des adresses, rechercher des entreprises par catégorie et emplacement, et calculer des itinéraires. Vous comprendrez également où l'API présente des limites et ce qu'il faut en faire.
Pourquoi extraire des données de Google Maps ?
La raison la plus courante est la génération de leads. Les équipes de vente extraient des listes d'entreprises locales — restaurants, dentistes, entrepreneurs — filtrées par ville ou catégorie. Mais ce n'est pas le seul cas d'utilisation.
Les marketeurs utilisent les données de Google Maps pour surveiller les concurrents : signaux de prix, détails des installations, éléments de menu. Les analystes immobiliers cartographient la densité des entreprises pour évaluer les quartiers. Les opérateurs de franchise identifient les lacunes dans leur zone de chalandise.
Dans tous ces cas, l'objectif est le même : transformer une recherche Google Maps en un ensemble de données structuré et exportable.
Configuration de votre clé API Google Maps
Avant d'écrire une seule ligne de code, vous avez besoin d'une clé API. Voici comment en obtenir une.
Allez sur console.cloud.google.com. Créez un nouveau projet — donnez-lui n'importe quel nom. Une fois le projet créé, sélectionnez-le dans la navigation en haut.
Ensuite, allez dans APIs & Services → Library. Chaque API que vous prévoyez d'utiliser doit être activée individuellement. Pour les exemples de ce guide, vous aurez besoin de :
- Geocoding API — convertit les adresses en coordonnées
- Places API (Nouvelle) — recherche des entreprises par catégorie et emplacement
- Directions API — calcule les itinéraires entre deux points
Activez chacune en cliquant dessus et en appuyant sur "Activer".
Après avoir activé votre première API, allez dans APIs & Services → Credentials. Votre clé API apparaît là. Copiez-la et conservez-la en lieu sûr.
Une note importante : l'API Google Maps est un service payant. Vous devrez attacher un compte de facturation à votre projet. Google fournit 200 $ de crédits mensuels gratuits, ce qui couvre environ 40 000 requêtes de géocodage ou 6 250 requêtes de Places API avant que des frais ne s'appliquent.
Exemple 1 : Géocodage d'une adresse
Le géocodage convertit une adresse lisible par l'homme en coordonnées de latitude et de longitude. C'est la base de la plupart des workflows basés sur la localisation.
Ce que fait l'API de géocodage
Envoyez une chaîne d'adresse → obtenez des coordonnées. C'est tout. La réponse inclut également l'ID de lieu, que vous pouvez réutiliser dans d'autres appels API.
L'URL de la requête
L'URL de base ressemble à ceci :
https://maps.googleapis.com/maps/api/geocode/json?address=YOUR_ADDRESS&key=YOUR_API_KEY
Le paramètre address doit être encodé en URL. Les espaces deviennent %20, les virgules deviennent %2C, et ainsi de suite.
Implémentation JavaScript
const address = encodeURIComponent("1600 Amphitheatre Parkway, Mountain View, CA");
const apiKey = "YOUR_API_KEY";
const url = `https://maps.googleapis.com/maps/api/geocode/json?address=${address}&key=${apiKey}`;
fetch(url)
.then(response => response.json())
.then(data => {
const location = data.results[0].geometry.location;
console.log("Latitude:", location.lat);
console.log("Longitude:", location.lng);
console.log("Place ID:", data.results[0].place_id);
})
.catch(error => console.error("Error:", error));
Lecture de la réponse
La réponse est un objet JSON. Les coordonnées se trouvent à results[0].geometry.location. Vous obtenez lat et lng comme champs séparés. L'ID de lieu se trouve à results[0].place_id — conservez-le si vous prévoyez d'utiliser l'API Places ou Directions ensuite.
Coût de l'API de géocodage : environ 5 $ par 1 000 requêtes. Le crédit mensuel de 200 $ couvre 40 000 requêtes avant que la facturation ne commence.
Exemple 2 : Recherche d'entreprises par catégorie
C'est ici que les choses deviennent utiles pour la génération de leads. L'API Places (Nouvelle) vous permet de rechercher des entreprises par type et emplacement. Vous définissez une catégorie, une zone géographique et un nombre de résultats — l'API renvoie les entreprises correspondantes.
Activation de la bonne API
Assurez-vous d'avoir activé l'API Places (Nouvelle) dans votre console Google Cloud, et non l'API Places héritée. La nouvelle version utilise un point de terminaison et un format de requête différents.
Configuration de la requête
L'API Places (Nouvelle) utilise une requête POST pour :
https://places.googleapis.com/v1/places:searchNearby
Vous envoyez un corps JSON avec vos paramètres de recherche et incluez votre clé API et le masque de champ dans les en-têtes.
Implémentation JavaScript
const apiKey = "YOUR_API_KEY";
const payload = {
includedTypes: ["restaurant"],
maxResultCount: 10,
locationRestriction: {
circle: {
center: {
latitude: 40.7128,
longitude: -74.0060
},
radius: 500.0
}
}
};
const headers = {
"Content-Type": "application/json",
"X-Goog-Api-Key": apiKey,
"X-Goog-FieldMask": "places.displayName,places.formattedAddress,places.nationalPhoneNumber,places.websiteUri,places.rating"
};
fetch("https://places.googleapis.com/v1/places:searchNearby", {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => {
data.places.forEach(place => {
console.log(place.displayName.text, "-", place.formattedAddress);
});
})
.catch(error => console.error("Error:", error));
Comprendre les masques de champ
Le champ X-Goog-FieldMask contrôle quels champs de données l'API renvoie. Ne demandez que ce dont vous avez besoin — cela affecte à la fois les performances et le coût.
Masques de champ courants pour l'extraction de données commerciales :
| Champ | Ce qu'il renvoie |
|---|---|
places.displayName |
Nom de l'entreprise |
places.formattedAddress |
Adresse complète |
places.nationalPhoneNumber |
Numéro de téléphone |
places.websiteUri |
URL du site web |
places.rating |
Note Google moyenne |
places.userRatingCount |
Nombre d'avis |
places.regularOpeningHours |
Heures d'ouverture |
La limite de 120 résultats
Voici une contrainte stricte : l'API Places renvoie un maximum de 20 résultats par requête, et la pagination est limitée à environ 60 résultats au total par zone de recherche. Si vous avez besoin de plus, vous devez diviser votre zone géographique en cercles plus petits et exécuter plusieurs requêtes.
C'est la principale raison pour laquelle les développeurs recherchent des alternatives lorsqu'ils doivent extraire des données de Google Maps à grande échelle.
Coût de l'API Places : environ 32 $ par 1 000 requêtes pour des champs de données de base. Les champs avancés (avis, photos) coûtent plus cher.
Exemple 3 : Calcul des itinéraires entre deux points
L'API Directions calcule les itinéraires entre un point de départ et une destination. Elle renvoie le temps de trajet, la distance et des instructions étape par étape.
Cas d'utilisation
Optimisation des itinéraires pour les équipes de vente sur le terrain. Estimations des temps de livraison. Cartographie des zones de couverture des services. Identification des entreprises situées dans un temps de trajet spécifique depuis un emplacement.
L'URL de la requête
https://maps.googleapis.com/maps/api/directions/json?origin=ORIGIN&destination=DESTINATION&mode=driving&departure_time=TIMESTAMP&key=YOUR_API_KEY
Pour l'origine et la destination, vous pouvez utiliser :
- Une adresse formatée :
"Montréal, QC, Canada" - Des coordonnées :
"45.5017,-73.5673" - Un ID de lieu :
"place_id:ChIJDbdkHFQayUwR7-8fITgxTmU"
Implémentation JavaScript
const apiKey = "YOUR_API_KEY";
const origin = "place_id:ChIJDbdkHFQayUwR7-8fITgxTmU"; // Montréal
const destination = "place_id:ChIJrxNRX7IFzkwR7RXdMeFRaUU"; // Ottawa
const departureTime = Math.floor(Date.now() / 1000); // Horodatage actuel
const url = `https://maps.googleapis.com/maps/api/directions/json?origin=${encodeURIComponent(origin)}&destination=${encodeURIComponent(destination)}&mode=driving&departure_time=${departureTime}&key=${apiKey}`;
fetch(url)
.then(response => response.json())
.then(data => {
const route = data.routes[0].legs[0];
console.log("Distance:", route.distance.text);
console.log("Durée:", route.duration.text);
console.log("Durée dans le trafic:", route.duration_in_traffic?.text);
})
.catch(error => console.error("Error:", error));
Conversion des dates en horodatages
Le paramètre departure_time nécessite un horodatage Unix — le nombre de secondes depuis le 1er janvier 1970. Pour convertir une date spécifique, utilisez epochconverter.com ou exécutez ceci en JavaScript :
const date = new Date("2025-06-15T09:00:00");
const timestamp = Math.floor(date.getTime() / 1000);
console.log(timestamp);
Coût de l'API Directions : environ 5 $ par 1 000 requêtes.
Considérations légales pour l'extraction de données Google Maps
Utiliser l'API officielle de Google Maps vous maintient dans les conditions de service de Google. C'est l'approche la plus sûre. Mais il y a encore des règles à suivre.
Respectez les limites de taux. Chaque API a des quotas quotidiens. Les dépasser déclenche des erreurs et peut entraîner la suspension de votre compte. Surveillez votre utilisation dans la console Google Cloud.
Accédez uniquement aux données publiques. L'API renvoie des informations commerciales visibles publiquement. N'essayez pas d'accéder aux données privées des utilisateurs ou de contourner l'authentification.
Ne mettez pas en cache les données indéfiniment. Les conditions de Google limitent la durée pendant laquelle vous pouvez stocker certains types de données. Vérifiez les conditions spécifiques pour chaque API que vous utilisez.
L'utilisation commerciale est autorisée — sous conditions. Vous pouvez utiliser les données extraites pour la génération de leads, la recherche de marché et l'intelligence commerciale. Vous ne pouvez pas revendre les données brutes de Google Maps en tant que produit autonome.
Pour le scraping direct (sans l'API officielle), la situation légale est plus floue. Les conditions de service de Google interdisent le scraping de leurs propriétés sans autorisation. Les tribunaux ont rendu des décisions mitigées à ce sujet. Le chemin le plus sûr est toujours l'API officielle.
Les limitations de l'API Google Maps
L'API fonctionne bien pour des extractions petites à moyennes. Mais elle présente de réelles contraintes lorsque vous avez besoin de volume.
Les coûts augmentent rapidement. L'API Places facture environ 32 $ par 1 000 requêtes. Extraire 50 000 listes d'entreprises coûte environ 1 600 $ en frais d'API seulement — avant tout temps de développement.
La limite de 120 résultats. Aucune recherche unique ne renvoie plus de 120 résultats. Couvrir une ville entière nécessite des dizaines de tuiles géographiques qui se chevauchent, chacune avec son propre appel API.
Aucun export en masse. L'API renvoie JSON. Vous devez écrire le code pour l'analyser, dédupliquer les enregistrements et exporter vers CSV. C'est un vrai travail d'ingénierie.
Des lacunes dans les données. Toutes les entreprises n'ont pas de site web, de numéro de téléphone ou d'email. L'API renvoie ce que Google a — ce qui varie selon l'emplacement et le type d'entreprise.
L'alternative sans code : IBLead
Si vous devez extraire des données de Google Maps sans écrire de code API, IBLead est fait pour cela.
IBLead est une base de données pré-indexée de plus de 50 millions d'entreprises dans 37 pays. Tout est déjà extrait et indexé — mis à jour chaque semaine. Vous recherchez par ville, code postal, région ou pays entier. Filtrez par catégorie, note Google, nombre d'avis ou technologies qu'une entreprise utilise sur son site web. Puis exportez instantanément au format CSV.
Aucune configuration API. Aucune limite de taux à gérer. Pas de facturation par requête.
IBLead détecte plus de 160 technologies web par fiche d'entreprise — plateformes CMS, outils d'analyse, pixels publicitaires, processeurs de paiement. C'est des données que l'API Google Maps ne renvoie pas du tout. Vous pouvez également accéder à jusqu'à 500 avis Google par fiche, y compris le texte de l'avis, la note, la date et l'auteur.
Pour 10 000 leads, vous regardez 52 $ — soit 0,004 $ par contact. Le plan gratuit vous donne 200 crédits pour le tester vous-même.
Commencez gratuitement — 200 crédits inclus
Questions Fréquemment Posées
Est-il légal d'extraire des données de Google Maps ?
Utiliser l'API officielle de Google Maps est légal et conforme aux conditions de service de Google. Le scraping direct sans l'API viole les conditions de Google et comporte des risques juridiques. Pour une utilisation commerciale, l'API ou un fournisseur de données sous licence est la bonne approche.
Quelle est la limite de résultats lors du scraping de Google Maps ?
L'API Places renvoie un maximum de 20 résultats par requête, avec une pagination limitée à environ 60 résultats par zone de recherche. Les outils de scraping direct atteignent souvent une limite d'environ 120 résultats par requête. Pour couvrir de plus grandes zones, vous devez diviser la géographie en tuiles plus petites.
Combien coûte l'API Google Maps ?
Les prix varient selon le type d'API. Le géocodage coûte environ 5 $ par 1 000 requêtes. L'API Places coûte environ 32 $ par 1 000 requêtes pour des données de base. Les directions coûtent environ 5 $ par 1 000 requêtes. Google fournit 200 $ de crédits mensuels gratuits, ce qui couvre une utilisation modérée avant que des frais ne s'appliquent.
Puis-je exporter des données Google Maps vers Excel ou CSV ?
L'API renvoie JSON — vous devez écrire du code pour le convertir en CSV ou Excel. Des outils comme IBLead sautent complètement cette étape : recherchez, filtrez et exportez directement au format CSV en moins de deux minutes.
Quels champs de données puis-je extraire de Google Maps ?
Via l'API officielle : nom de l'entreprise, adresse, numéro de téléphone, site web, note, nombre d'avis, heures d'ouverture, coordonnées et ID de lieu. IBLead ajoute des adresses email (enrichies à partir des sites web des entreprises), des profils de réseaux sociaux, une pile technologique et jusqu'à 500 avis Google complets par fiche.
Conclusion
Extraire des données de Google Maps avec l'API JavaScript est simple une fois que vous comprenez les trois API principales : Geocoding pour les coordonnées, Places pour la recherche d'entreprises et Directions pour le routage. Chacune a une documentation claire, des prix prévisibles et un support officiel de Google.
Cependant, les compromis sont réels. Les coûts d'API s'accumulent en volume. Les limites de résultats nécessitent un carrelage géographique. Et vous devez toujours écrire le code pour analyser, dédupliquer et exporter vos données.
Pour les développeurs construisant des applications conscientes de la localisation, l'API est le bon outil. Pour les équipes de vente et les marketeurs qui ont besoin de listes d'entreprises rapidement, une solution pré-indexée fait gagner des heures de travail d'ingénierie.
Quoi qu'il en soit, vous avez maintenant une vue d'ensemble complète pour prendre la bonne décision pour votre cas d'utilisation.
Prêt à commencer ?
Accédez à toutes les entreprises Google Maps, enrichies avec emails et données légales.
Essayer IBLead gratuitementArticles similaires
10 conseils éprouvés pour inciter les clients à laisser plus d'avis sur Google Maps
Découvrez 10 stratégies pratiques pour augmenter les avis sur Google Maps. Timing, incitations, QR codes et tactiques de réponse efficaces.
7 erreurs de cold email à éviter : exemples et modèles
Évitez ces 7 erreurs de cold email pour améliorer vos taux de réponse. Exemples réels, modèles AIDA et solutions éprouvées.
ABM Données Google Maps : Le Guide Stratégique Complet
Découvrez comment les données Google Maps pour le marketing basé sur les comptes génèrent 208 % de revenus supplémentaires.