1 数据准备

经过尝试,百度地图API需要输入城市中文名称才能获取对应经纬度坐标,因此先将英文的城市名称转为中文

一共347个城市

由于在测试过程中发现高德和百度地图API分别有几个城市的地址无法获取经纬度,但是恰好能够互补,因此使用两种API联合获取347个国内城市的经纬度

需要注意的是该经纬度不是WGS84经纬度,有一定偏差,但是关系不大。

2 高德地图API

1 先注册成为开发者

查看地理编码的输入和返回参数:

代码如下:

import requests

import json

import pprint

import pandas as pd

import csv

import pprint

key='**********' #填入自己的key

#构建函数

def getlnglat(address):

url='https://restapi.amap.com/v3/geocode/geo'

params = {'key':key,

'address':address}

res = requests.get(url, params)

json_data = json.loads(res.text)

return json_data

#打开cs

inpath=r"H:\02Course\00DATA\表格\cityname.xlsx"

outpath=r"H:\02Course\00DATA\表格\citylnglat_Gaode.xlsx"

df = pd.read_excel(inpath,encoding = 'UTF-8')

df['lng'] = 'collng'#创建新列存放经度

df['lat'] = 'collat'#创建新列存放纬度

for i in df.values:

b = i[2] #第一列的地址 .strip("'")

ind=i[0]

print(b)

json_data=getlnglat(b)

i[7] = json_data['geocodes'][0]['location']#获取经纬度

df['lng'][ind]=float(i[7].split(",")[0])#经度

df['lat'][ind]=float(i[7].split(",")[1])#纬度

pprint.pprint(json_data)

df.to_excel(outpath)

输出结果为:

3 百度地图API

代码如下:

import requests,csv

import pandas as pd

import json

import requests

import json

import pprint

ak = '*******'#ak需要去百度地图申请

def getlnglat(address):

url = 'http://api.map.baidu.com/geocoder/v2/?address={}&output=json&ak={}'.format(address,ak)

res = requests.get(url)

json_data = json.loads(res.text)

return json_data

inpath=r'H:\02Course\00DATA\表格\cityname.xlsx'

outpath=r'H:\02Course\00DATA\表格\citylinlat_Baidu.xlsx'

df = pd.read_excel(inpath,encoding = 'UTF-8')

df['lng'] = 'collng'#创建新列存放经度

df['lat'] = 'collat'#创建新列存放纬度

for i in df.values:

b = i[2] #第一列的地址

print(b)

ind=i[0]

json_data=getlnglat(b)

i[7] = json_data['result']['location']['lng']#获取经度并写入

i[8] = json_data['result']['location']['lat']#获取纬度并写入

df['lng'][ind]=float(i[7])

df['lat'][ind]=float(i[8])

print(i)

df

df.to_excel(outpath)

运行结果:

python百度地图api经纬度_Python调用百度地图和高德地图API批量获取国内城市地址经纬度坐标...相关推荐

  1. python爬取地图上的经纬度_Python调用百度地图API爬取经纬度

    作者:国服帅座  经济学在读硕士 微信公众号:统计之家 你吃肯德基,我点麦当劳.本是替代品,却众口难调.每个人都有独特的偏好,都有一份要坚守的情怀.高德与百度,你心仪哪款呢? 认识百度地图API 百度 ...

  2. python调用百度地图实现导航_python调用百度地图WEB服务API获取地点对应坐标值

    本篇博客介绍如何使用Python调用百度地图WEB服务API获取地点对应坐标值,现有一系列结构化地址数据(如:北京市海淀区上地十街十号),目的是获取对应坐标值. 百度地图开发者平台路线规划使用说明网址 ...

  3. python调用百度地图api定位_python 调用百度地图地点检索webAPI

    百度地图提供了开放的API,使用方法 右上角登陆账号 -> 点击"获取密钥" -> "创建应用" -> 填写应用名称&白名单IP -& ...

  4. python调用百度api接口_python调用百度API

    标签: from urllib.request import urlopen import requests import json url = "http://apis.baidu.com ...

  5. python调用百度识别文字接口_python调用百度通用文字识别接口进行验证码识别

    官方文档入口 https://cloud.baidu.com/doc/OCR/OCR-Python-SDK.html#.E7.AE.80.E4.BB.8B 安装 pip3 install baidu- ...

  6. python文本自动伪原创_Python调用有道智云文本翻译API接口实现“智能”伪原创

    随着人工智能的火热,互联网热门韭菜行业SEO也貌似进入了AI的快车道,尤其以智能伪原创超级热门,你会发现几乎是个seo工具网站都挂着智能伪原创的"狗头"招牌,抱着人无我有,人有我优 ...

  7. python调用高德地图api 可视化_Python调用高德地图API实现经纬度换算、地图可视化...

    前地图可视化的工具和函数比较多,但是在不知道相关地点经纬度的情况下,通过python调用高德地图API实现经纬度换算,并且直接在高德地图新推出的轻量级可视化平台上实现一键式地图可视化,这其中需要申请密 ...

  8. 根据两个经纬度点调用百度地图应用查询路线 适用android或者ios中及网页浏览(手机网页同样适用)

    Intent intent = null;try {// 如果有安装百度地图 就启动百度地图StringBuffer sbs = new StringBuffer();sbs.append(" ...

  9. APICloud,内置API及url调用百度地图导航

    内置API及url调用百度地图APP导航 方法中的两个参数,为自己当前位置的经纬度 function arouseMap(lon,lat){var location = $api.getStorage ...

最新文章

  1. 简析Uber的可伸缩监控:uMonitor和Neris
  2. 安装完成后在命令行运行bash时报错0x80070057
  3. 理解DDoS防护本质:基于资源较量和规则过滤的智能化系统
  4. Postman高级应用——流程控制、调试、公共函数、外部数据文件
  5. JS容易犯错的this和作用域
  6. 华科计算机学院三好学生,他是华科“三好学生标兵”,被保研到北大、复旦、交大等3所名校!...
  7. 1-9月欧洲新能源车份额上升 混动车注册量增加8.8%
  8. Scratch-Q版三国小人物角色素材分享,值得您的收藏!
  9. vue项目px自动转rem适用于pc端
  10. 企业微信发消息通知-java
  11. 网站SEO优化高质量内容怎么写
  12. 大学如何学习——我的五年失败经验总结
  13. android官方开发文档中学英文-uniformly distributed int(均匀分布的整数)
  14. Android 仿微信实现语音聊天功能
  15. 12306暴SQL注入漏洞?!这下乐大发了
  16. 在github搭建自己写的网页
  17. Shader step函数实现线条拼色
  18. 药物设计linux推荐,【经验交流】药物设计与研发专业平台系统之Discovery Studio 3.0(win)、Discovery Studio 3.5(linux)...
  19. 微软外包人才之道:一流外包团队如何打造
  20. qqc什么梗_qqc是什么

热门文章

  1. qsssssssssss
  2. 图像处理实例--基于分水岭分割进行肺癌判断
  3. Spring MVC(一)
  4. C、C++ 中\n、\t、\r的具体用法功能
  5. iOS集成QQ、微信、微博、短信、邮件分享(非第三方集成)
  6. MAC苹果下制作U盘启动安装WINDOWS系统盘
  7. 关于最近做的几道Python三级备考题
  8. 软件自动化测试开发邹辉,软件自动化测试开发
  9. 在Vue项目中获取当前日期的农历日期(阴历)
  10. android ar物体识别_拍照救命稻草 AR物体识别崛起_手机生活新闻-中关村在线