Computer >> Máy Tính >  >> Lập trình >> Python

Tính tọa độ địa lý của các địa điểm bằng cách sử dụng API mã hóa địa lý của google bằng Python?

Để có được tọa độ địa lý của địa điểm đó là kinh độ và vĩ độ của địa điểm đó, chúng ta có thể sử dụng api mã hóa địa lý của google maps.

Yêu cầu

Để có được tọa độ của một địa điểm, chúng tôi yêu cầu api mã hóa địa lý và bạn có thể lấy nó từ liên kết dưới đây:

https://developers.google.com/maps/documentation/geocoding/get-api-key

Ngoài api_key, chúng tôi sẽ sử dụng python

  • Mô-đun yêu cầu (tìm nạp tọa độ)
  • Mô-đun Json (để chuyển đổi).

Dưới đây là chương trình để đạt được điều tương tự:

# Import required library
import requests
import json
#Enter the place name
place = input("Please enter place name: ")
#Place your google map API_KEY to a variable
apiKey = 'YOUR_API_KEY'
#Store google geocoding api url in a variable
url = 'https://maps.googleapis.com/maps/api/geocode/json?'
# call get method of request module and store respose object
r = requests.get(url + 'address =' + place + '&key =' + apiKey)
#Get json format result from the above response object
res = r.json()
#print the value of res
print(res)

Đầu ra

Please enter place name: Dehradun
{'results': [{'address_components': [{'long_name': 'Dehradun', 'short_name': 'Dehradun', 'types': ['locality', 'political']}, {'long_name': 'Dehradun', 'short_name': 'Dehradun', 'types': ['administrative_area_level_2', 'political']}, {'long_name': 'Uttarakhand', 'short_name': 'UK', 'types': ['administrative_area_level_1', 'political']}, {'long_name': 'India', 'short_name': 'IN', 'types': ['country', 'political']}], 'formatted_address': 'Dehradun, Uttarakhand, India', 'geometry': {'bounds': {'northeast': {'lat': 30.4041936, 'lng': 78.1089305}, 'southwest': {'lat': 30.2466633, 'lng': 77.92533879999999}}, 'location': {'lat': 30.3164945, 'lng': 78.03219179999999}, 'location_type': 'APPROXIMATE', 'viewport': {'northeast': {'lat': 30.4041936, 'lng': 78.1089305}, 'southwest': {'lat': 30.2466633, 'lng': 77.92533879999999}}}, 'place_id': 'ChIJr4jIVsMpCTkRmYdRMsBiNUw', 'types': ['locality', 'political']}], 'status': 'OK'}