欢迎访问宙启技术站
智能推送

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()函数还可以获取其他地理信息,比如地址、邮编、国家等。你可以根据自己的需求进行定制和调整。