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

使用geocodergoogle()进行地址解析和标准化的实用Python代码示例

发布时间:2023-12-24 06:55:48

下面是一个使用geocodergoogle()函数进行地址解析和标准化的实用Python代码示例:

import requests
import json

def geocodergoogle(address):
    base_url = 'https://maps.googleapis.com/maps/api/geocode/json'
    params = {
        'address': address,
        'key': 'YOUR_API_KEY'  # 替换为你的Google API密钥
    }

    response = requests.get(base_url, params=params)
    data = json.loads(response.text)

    if data['status'] == 'OK':
        formatted_address = data['results'][0]['formatted_address']
        latitude = data['results'][0]['geometry']['location']['lat']
        longitude = data['results'][0]['geometry']['location']['lng']
        
        return formatted_address, latitude, longitude
    else:
        return None

# 示例用法
address = '1600 Amphitheatre Parkway, Mountain View, CA'
result = geocodergoogle(address)

if result:
    print('原始地址:', address)
    print('标准化地址:', result[0])
    print('纬度:', result[1])
    print('经度:', result[2])
else:
    print('解析失败')

上述代码中,geocodergoogle()函数使用Google地理编码API来解析并标准化给定地址。你需要将YOUR_API_KEY替换为你自己的Google API密钥。

函数首先构建了API请求的URL,并将地址和API密钥作为参数传递给API。然后它发送HTTP GET请求并解析响应中的JSON数据。

如果解析成功(即响应状态为OK),函数从结果中提取格式化的地址、纬度和经度,并作为元组返回。否则,返回None表示解析失败。

代码示例中还展示了如何使用geocodergoogle()函数。你可以将你要解析的地址作为参数传递给函数,并使用返回的结果进行进一步处理。如果解析成功,代码将打印原始地址、标准化地址、纬度和经度。如果解析失败,代码将打印解析失败的消息。

请注意,使用Google地理编码API需要您具有有效的API密钥,并且可能需要付费使用。详细信息请参阅Google地理编码API的文档。