Python中使用geocodergoogle()实现地点的海拔高度获取
发布时间:2024-01-01 23:11:48
在Python中,可以使用geocoder库的geocodergoogle()函数来实现地点的海拔高度获取。geocodergoogle()函数是基于Google地理编码API的一个封装,可以使用该函数来获取地理位置的经纬度、地址等信息。
下面是一个简单的使用geocodergoogle()函数获取地点海拔高度的例子:
import geocoder
def get_elevation(location):
g = geocoder.google(location)
if g.ok:
lat, lng = g.latlng
elevation_url = f"https://maps.googleapis.com/maps/api/elevation/json?locations={lat},{lng}&key=YOUR_API_KEY"
elevation_info = g.get(elevation_url).json()
if elevation_info['status'] == 'OK':
elevation = elevation_info['results'][0]['elevation']
return elevation
return None
# 获取地点的海拔高度
location = "北京市"
elevation = get_elevation(location)
if elevation:
print(f"{location}的海拔高度为 {elevation} 米")
else:
print(f"无法获取 {location} 的海拔高度")
在上述代码中,我们首先导入了geocoder库,然后定义了一个get_elevation()函数,该函数接受一个地点名称作为参数,并返回该地点的海拔高度。在函数内部,我们使用geocodergoogle()函数获取地点的经纬度信息,并构造一个请求Google海拔高度API的URL。然后,我们发送HTTP请求并解析返回的JSON数据,从中获取海拔高度。
接下来,我们通过调用get_elevation()函数来获取北京市的海拔高度,并根据返回的结果进行输出。
需要注意的是,上述代码中的API_KEY需要替换为你自己的Google地图API密钥。你可以在Google开发者控制台中创建一个新的项目,并启用“地理编码”和“地图服务”API,然后生成一个API密钥来使用。
除了可以获取海拔高度,geocodergoogle()函数还可以获取其他地理信息,比如地址、邮编、国家等。你可以根据自己的需求进行定制和调整。
