如何根据具体地址获取经纬度

根据具体地址获取经纬度

背景:在爬虫实战中 https://editor.youkuaiyun.com/md/?articleId=93904502 ,关于地图展示部分,有些地址没有在地图上展示,这是由于excel不能识别具体地址的物理位置,故需要根据经纬度获取具体地址的位置。好想把最后的可视化地图送给买房的盆友们 ***—***
汤臣一品不是梦*–*
也就20多万一平吧

言归正传~

通过python调用高德地图接口,返回经纬度
代码如下:

import xlrd
import requests
import json

# 设置路径
path = './lj_distinct_data_analysis.xlsx'
# 打开execl
workbook = xlrd.open_workbook(path)

# 输出Excel文件中所有sheet的名字
print(workbook.sheet_names())

# 根据sheet索引或者名称获取sheet内容
Data_sheet = workbook.sheets()[0]  # 通过索引获取
colNum = Data_sheet.ncols  # sheet列数
rowNum = Data_sheet.nrows  # sheet行数

cols = Data_sheet.col_values(colNum - 1)  # 获取最后一列内容
print(cols)
address_all = []
url = "https://restapi.amap.com/v3/geocode/geo"
if rowNum > 2:
    # 循环地址
    count = 1
    address = ''
    for rowCount in range(1, rowNum):
        # 10次请求或者是最后一次请求未满10if (count % 10 == 0
### 地址转经纬度API接口 对于根据地址获取经纬度的需求,存在多种地图服务提供商可以满足这一需求。百度地图提供了地理编码服务,通过向特定URL发送请求并附带待查询的地址参数,能够返回该地址对应的经纬度信息[^1]。 #### 百度地图API示例 要使用百度地图API来实现地址到经纬度转换功能,可以通过GET方法访问如下所示的RESTful API: ```plaintext https://api.map.baidu.com/geocoding/v3/?address={具体地址}&output=json&ak={您的应用密钥} ``` 其中`{具体地址}`替换为目标地理位置描述,而`{您的应用密钥}`则需替换成开发者申请得到的应用程序接口密钥(AK)。此接口支持JSON和XML两种数据格式作为输出选项,在上述例子中选择了更常用的JSON格式。 另外,高德开放平台也提供相似的服务,并且其官方文档详细介绍了如何调用地理位置解析接口完成从结构化地址到坐标点之间的相互转化过程[^2]。 #### 高德地图API示例 以下是采用PHP语言编写的一个简单实例,用于演示怎样借助于高德Web Service API执行逆地理编码操作从而获得指定地点的确切经度纬度值: ```php <?php $address = urlencode("北京市朝阳区阜通东大街6号"); $key = "您自己的key"; $url = "https://restapi.amap.com/v3/geocode/geo?address=$address&key=$key"; $response = file_get_contents($url); $data = json_decode($response, true); if ($data['status'] == '1' && $data['info'] == 'OK') { echo "Location: " . $data['geocodes'][0]['location']; } else { echo "Error occurred."; } ?> ``` 腾讯地图同样具备此类能力,只需在HTML页面内的`<head>`部分加入相应的JavaScript SDK加载语句即可快速上手开发基于浏览器端的地图应用程序[^3]。 以上三种方案均能有效地帮助开发者实现在互联网环境中依据自然语言表述的位置名称检索出精确的空间定位信息的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值