Google Maps Places API on võimas tööriist, mis võimaldab arendajatel pääseda juurde üksikasjalikule teabele kohtade kohta kogu maailmas. Selles õpetuses juhendame teid Pythonis uue Google Maps Places API kasutamise protsessis alates Google Cloudi projekti seadistamisest kuni API päringute tegemise ja vastuste käsitlemiseni.

Mis on Google Maps Placesi API?

Google Mapsil on Placesi API kaks versiooni:

  1. Pärand API - Võimaldab ühendada lihtsa API-võtmega.
  2. Järgmise põlvkonna API – Nõuab autentimiseks OAuth 2.0 ja pakub täpsemaid funktsioone.

Google'i pilveprojekti seadistamine

  1. Navigeerige Google Cloud Console'i: Minema Google Cloud Console.
  2. Loo projekt: kui teil projekti pole, looge see, klõpsates rippmenüül ja valides "Uus projekt".
  3. Lubage API-d ja teenused: avage API-d ja teenused > Armatuurlaud ja lubage Placesi API.
  4. OAuth 2.0 seadistamine: avage API-d ja teenused > OAuthi nõusolekuekraan, seadistage nõusolekukuva ja looge OAuth 2.0 mandaadid.

Autentimine OAuth 2.0 abil

  1. Looge OAuthi kliendi ID: valige rakenduse tüübiks "Töölauarakendus" ja laadige alla kliendi salafail.
  2. Installige vajalikud raamatukogud: Google Pythoni klienditeegi ja Pythoni dotenv paketi installimiseks kasutage pipi.
pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client python-dotenv

API taotluste tegemine

API kliendi lähtestamine

Loo Pythoni skript (nt maps_textsearch.py) ja lähtestage API klient allalaaditud mandaatide abil.

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)

Näide: tekstiotsing

Määratlege otsinguparameetrid: konkreetsete kohtade otsimiseks looge päring.

     query = 'ramen places in New York'
    response = service.places().textSearch(query=query).execute()
    print(json.dumps(response, indent=4))

    Käsitlege vastust: võtke välja ja kuvage asjakohast teavet.

    for place in response['results']:
        print(place['name'], place['formatted_address'])

    Näide: koha üksikasjad

    Hankige koha üksikasjad: hankige üksikasjalik teave konkreetse koha kohta, kasutades selle koha ID-d.

    place_id = 'ChIJN1t_tDeuEmsRUsoyG83frY4'
    response = service.places().get(place_id=place_id).execute()
    print(json.dumps(response, indent=4))

    Kuva üksikasjad: eraldage ja printige välja üksikasjad, nagu ülevaated, lahtiolekuajad jne.

    print('Name:', response['name'])
    print('Address:', response['formatted_address'])
    print('Phone:', response['formatted_phone_number'])

    Hinnakujundus ja kvoodid

    Google pakub kõigi Mapsi toodete jaoks $200 tasuta krediiti kuus. Jälgige oma kasutamist, et vältida ootamatuid tasusid.

    Kokkuvõte

    Järgides neid samme, saate Google Maps Places API edukalt oma Pythoni rakendustesse integreerida, pakkudes kasutajakogemuse parandamiseks rikkalikke kohaga seotud andmeid.

    Tabel: Põhipunktid

    SammKirjeldus
    Projekti seadistamineLooge Google Cloud Console'is projekt, lubage Places API ja seadistage OAuth 2.0 mandaadid.
    AutentimineKasutage API taotluste autentimiseks OAuth 2.0.
    API taotlusedTehke API-päringuid Pythoni klienditeegi abil.
    Vastuse käsitlemineHankige ja kuvage API vastustest asjakohast teavet.
    HinnakujundusKasutage Google Mapsi pakutavat $200 tasuta krediiti.

    Koodilõigu näide

    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'])
    
    

      Seda juhendit järgides saate hõlpsalt alustada Google Maps Placesi API-ga ja avada oma rakenduste jaoks hulgaliselt asukohapõhiseid andmeid. Nautige Google Mapsi maailma avastamist!

      Kommentaarid (0)

      Siin pole veel kommentaare, võite olla esimene!

      Lisa kommentaar

      Sinu e-postiaadressi ei avaldata. Nõutavad väljad on tähistatud *-ga


      Vali ja osta proxy

      Andmekeskuse proksid

      Pöörlevad proksid

      UDP Proxy'd

      Usaldab üle 10 000 kliendi kogu maailmas

      Puhverklient
      Puhverklient
      Puhverklient flowch.ai
      Puhverklient
      Puhverklient
      Puhverklient