API Tempat Peta Google ialah alat berkuasa yang membolehkan pembangun mengakses maklumat terperinci tentang tempat di seluruh dunia. Dalam tutorial ini, kami akan membimbing anda melalui proses menggunakan API Tempat Peta Google baharu dalam Python, daripada menyediakan projek Awan Google anda kepada membuat permintaan API dan mengendalikan respons.
Apakah API Tempat Peta Google?
Peta Google mempunyai dua versi API Tempat:
- API warisan – Membenarkan sambungan dengan kunci API mudah.
- API Generasi Seterusnya – Memerlukan OAuth 2.0 untuk pengesahan dan menyediakan ciri yang lebih maju.
Menyediakan Projek Awan Google Anda
- Navigasi ke Google Cloud Console: Pergi ke Google Cloud Console.
- Buat Projek: Jika anda tidak mempunyai projek, buat satu dengan mengklik pada menu lungsur dan memilih “Projek Baharu”.
- Dayakan API dan Perkhidmatan: Pergi ke API dan Perkhidmatan > Papan Pemuka dan dayakan API Tempat.
- Sediakan OAuth 2.0: Pergi ke API dan Perkhidmatan > Skrin Persetujuan OAuth, sediakan skrin persetujuan dan buat bukti kelayakan OAuth 2.0.
Mengesahkan dengan OAuth 2.0
- Buat ID Klien OAuth: Pilih “Apl Desktop” sebagai jenis aplikasi dan muat turun fail rahsia pelanggan.
- Pasang Perpustakaan yang Diperlukan: Gunakan pip untuk memasang pustaka klien Google Python dan pakej dotenv Python.
pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client python-dotenv
Membuat Permintaan API
Memulakan Klien API
Buat skrip Python (cth, maps_textsearch.py
) dan mulakan klien API menggunakan bukti kelayakan yang dimuat turun.
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)
Contoh: Carian Teks
Tentukan Parameter Carian: Buat pertanyaan untuk mencari tempat tertentu.
query = 'ramen places in New York'
response = service.places().textSearch(query=query).execute()
print(json.dumps(response, indent=4))
Mengendalikan Respons: Ekstrak dan paparkan maklumat yang berkaitan.
for place in response['results']:
print(place['name'], place['formatted_address'])
Contoh: Butiran Tempat
Dapatkan Butiran Tempat: Dapatkan maklumat terperinci tentang tempat tertentu menggunakan ID tempatnya.
place_id = 'ChIJN1t_tDeuEmsRUsoyG83frY4'
response = service.places().get(place_id=place_id).execute()
print(json.dumps(response, indent=4))
Paparan Butiran: Ekstrak dan cetak butiran seperti ulasan, waktu buka, dsb.
print('Name:', response['name'])
print('Address:', response['formatted_address'])
print('Phone:', response['formatted_phone_number'])
Harga dan Kuota
Google menawarkan $200 kredit percuma setiap bulan untuk semua produk Peta. Pantau penggunaan anda untuk mengelakkan caj yang tidak dijangka.
Kesimpulan
Dengan mengikuti langkah-langkah ini, anda boleh berjaya menyepadukan API Tempat Peta Google ke dalam aplikasi Python anda, menyediakan data berkaitan tempat yang kaya untuk meningkatkan pengalaman pengguna.
Jadual: Perkara Utama
Langkah | Penerangan |
---|---|
Persediaan Projek | Buat projek dalam Google Cloud Console, dayakan Places API dan sediakan bukti kelayakan OAuth 2.0. |
Pengesahan | Gunakan OAuth 2.0 untuk mengesahkan permintaan API. |
Permintaan API | Buat permintaan API menggunakan perpustakaan klien Python. |
Pengendalian Respons | Ekstrak dan paparkan maklumat yang berkaitan daripada respons API. |
penetapan harga | Gunakan kredit percuma $200 yang disediakan oleh Peta Google. |
Contoh Coretan Kod
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'])
Dengan mengikuti panduan ini, anda boleh bermula dengan mudah dengan API Tempat Peta Google dan membuka kunci banyak data berasaskan lokasi untuk aplikasi anda. Nikmati meneroka dunia Peta Google!
Komen (0)
Tiada ulasan di sini lagi, anda boleh menjadi yang pertama!