L'API Google Maps Places est un outil puissant qui permet aux développeurs d'accéder à des informations détaillées sur des lieux à travers le monde. Dans ce didacticiel, nous vous guiderons tout au long du processus d'utilisation de la nouvelle API Google Maps Places en Python, depuis la configuration de votre projet Google Cloud jusqu'à la création de requêtes API et la gestion des réponses.
Qu'est-ce que l'API Google Maps Places ?
Google Maps propose deux versions de l'API Places :
- Ancienne API – Permet la connexion avec une simple clé API.
- API de nouvelle génération – Nécessite OAuth 2.0 pour l'authentification et fournit des fonctionnalités plus avancées.
Configuration de votre projet Google Cloud
- Accédez à Google Cloud Console: Aller à Google Cloud Console.
- Créer un projet: Si vous n'avez pas de projet, créez-en un en cliquant sur le menu déroulant et en sélectionnant « Nouveau projet ».
- Activer les API et les services: accédez à API et services > Tableau de bord et activez l'API Places.
- Configurer OAuth 2.0: accédez à API et services > Écran de consentement OAuth, configurez l'écran de consentement et créez les informations d'identification OAuth 2.0.
Authentification avec OAuth 2.0
- Créer un identifiant client OAuth: Choisissez « Application de bureau » comme type d'application et téléchargez le fichier secret client.
- Installer les bibliothèques requises: utilisez pip pour installer la bibliothèque client Google Python et le package Python dotenv.
pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client python-dotenv
Faire des requêtes API
Initialisation du client API
Créez un script Python (par exemple, maps_textsearch.py
) et initialisez le client API à l'aide des informations d'identification téléchargées.
from google.oauth2 import service_account
from googleapiclient.discovery import build
import json
def create_service(client_secret_file, api_name, api_version, scopes):
credentials = service_account.Credentials.from_service_account_file(client_secret_file, scopes=scopes)
return build(api_name, api_version, credentials=credentials)
CLIENT_SECRET_FILE = 'path/to/client_secret.json'
API_SERVICE_NAME = 'places'
API_VERSION = 'v1'
SCOPES = ['https://www.googleapis.com/auth/maps']
service = create_service(CLIENT_SECRET_FILE, API_SERVICE_NAME, API_VERSION, SCOPES)
Exemple : recherche de texte
Définir les paramètres de recherche: Créez une requête pour rechercher des lieux spécifiques.
query = 'ramen places in New York'
response = service.places().textSearch(query=query).execute()
print(json.dumps(response, indent=4))
Gérer la réponse: Extraire et afficher les informations pertinentes.
for place in response['results']:
print(place['name'], place['formatted_address'])
Exemple : Détails du lieu
Obtenir les détails du lieu: récupérez des informations détaillées sur un lieu spécifique à l'aide de son identifiant de lieu.
place_id = 'ChIJN1t_tDeuEmsRUsoyG83frY4'
response = service.places().get(place_id=place_id).execute()
print(json.dumps(response, indent=4))
Afficher les détails: Extrayez et imprimez les détails tels que les avis, les heures d'ouverture, etc.
print('Name:', response['name'])
print('Address:', response['formatted_address'])
print('Phone:', response['formatted_phone_number'])
Tarifs et quotas
Google propose $200 de crédit gratuit par mois pour tous les produits Maps. Surveillez votre utilisation pour éviter des frais inattendus.
Conclusion
En suivant ces étapes, vous pouvez intégrer avec succès l'API Google Maps Places dans vos applications Python, fournissant ainsi des données riches sur les lieux pour améliorer l'expérience utilisateur.
Tableau : Points clés
Étape | Description |
---|---|
Configuration du projet | Créez un projet dans Google Cloud Console, activez l'API Places et configurez les informations d'identification OAuth 2.0. |
Authentification | Utilisez OAuth 2.0 pour authentifier les requêtes API. |
Requêtes API | Effectuez des requêtes API à l'aide de la bibliothèque client Python. |
Gestion des réponses | Extrayez et affichez les informations pertinentes des réponses API. |
Tarification | Utilisez le crédit gratuit $200 fourni par Google Maps. |
Exemple d'extrait de code
from google.oauth2 import service_account
from googleapiclient.discovery import build
def create_service(client_secret_file, api_name, api_version, scopes):
credentials = service_account.Credentials.from_service_account_file(client_secret_file, scopes=scopes)
return build(api_name, api_version, credentials=credentials)
CLIENT_SECRET_FILE = 'path/to/client_secret.json'
API_SERVICE_NAME = 'places'
API_VERSION = 'v1'
SCOPES = ['https://www.googleapis.com/auth/maps']
service = create_service(CLIENT_SECRET_FILE, API_SERVICE_NAME, API_VERSION, SCOPES)
query = 'ramen places in New York'
response = service.places().textSearch(query=query).execute()
print(json.dumps(response, indent=4))
for place in response['results']:
print(place['name'], place['formatted_address'])
En suivant ce guide, vous pouvez facilement démarrer avec l'API Google Maps Places et débloquer une multitude de données géolocalisées pour vos applications. Bonne exploration du monde de Google Maps !
Commentaires (0)
Il n'y a pas encore de commentaires ici, vous pouvez être le premier !