使用Python中的Google地理编码API计算地点的地理坐标?

要获取该地方的地理坐标,即该地方的经度和纬度,我们可以使用Google Maps地理编码API。

需求

要获取某个地点的坐标,我们需要地理编码api,您可以从以下链接中获取它:

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

除了api_key之外,我们将使用python

  • 请求模块(获取坐标)

  • Json模块(用于转换)。

下面是实现相同目的的程序:

# 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)

输出结果

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'}