python百度地图api经纬度_从百度地图API接口批量获取地点的经纬度
1.[代码][Python]代码
#!/usr/bin/python
#coding:utf-8
import xlrd
import xlwt
import requests
import urllib
import math
import re
pattern_x=re.compile(r'"x":(".+?")')
pattern_y=re.compile(r'"y":(".+?")')
def mercator2wgs84(mercator):
#key1=mercator.keys()[0]
#key2=mercator.keys()[1]
point_x=mercator[0]
point_y=mercator[1]
x=point_x/20037508.3427892*180
y=point_y/20037508.3427892*180
y=180/math.pi*(2*math.atan(math.exp(y*math.pi/180))-math.pi/2)
return (x,y)
def get_mercator(addr):
quote_addr=urllib.quote(addr.encode('utf8'))
city=urllib.quote(u'齐齐哈尔市龙'.encode('utf8'))
province=urllib.quote(u'黑龙江省'.encode('utf8'))
if quote_addr.startswith(city) or quote_addr.startswith(province):
pass
else:
quote_addr=city+quote_addr
s=urllib.quote(u'北京市'.encode('utf8'))
api_addr="http://api.map.baidu.com/?qt=gc&wd=%s&cn=%s&ie=utf-8&oue=1&fromproduct=jsapi&res=api&callback=BMap._rd._cbk62300"%(quote_addr
,s)
req=requests.get(api_addr)
content=req.content
x=re.findall(pattern_x,content)
y=re.findall(pattern_y,content)
if x:
x=x[0]
y=y[0]
x=x[1:-1]
y=y[1:-1]
x=float(x)
y=float(y)
location=(x,y)
else:
location=()
return location
def run():
data=xlrd.open_workbook('Book2.xls')
rtable=data.sheets()[0]
nrows=rtable.nrows
values=rtable.col_values(0)
workbook=xlwt.Workbook()
wtable=workbook.add_sheet('data',cell_overwrite_ok=True)
row=0
for value in values:
mercator=get_mercator(value)
if mercator:
wgs=mercator2wgs84(mercator)
else:
wgs=('NotFound','NotFound')
print "%s,%s,%s"%(value,wgs[0],wgs[1])
wtable.write(row,0,value)
wtable.write(row,1,wgs[0])
wtable.write(row,2,wgs[1])
row=row+1
workbook.save('data.xls')
if __name__=='__main__':
run()
python百度地图api经纬度_从百度地图API接口批量获取地点的经纬度相关推荐
- 百度地图java批量获得经纬度_从百度地图API接口批量获取地点的经纬度
#!/usr/bin/python #coding:utf-8 import xlrd import xlwt import requests import urllib import math im ...
- 利用高德地图API批量获取地点经纬度和行车线路与OD距离(excel和python)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.excel调取API方法 1.申请一个key 2.excel调用API 二.python方法 计算地址列表中两两之 ...
- 『Tricks』用Python批量获取地理位置的经纬度信息
利用Python来批量自动获取指定位置的经纬度信息,并且将之保存到csv文件中. 文章目录 接口申请 获取经纬度 用apply()实现批量获取 小提示 参考文章 接口申请 首先,我们需要一个接口, ...
- wms地图绘制工具_三维离线地图-三维地图开发,三维地球,三维可视化开发
一.软件介绍 BIGEMAP离线地图服务器,提供一站式搭建离线/在线地图数据服务器,支持40多种地图离线发布:提供快速WEB应用.WMTS.TMS.WMS等地图服务:支持二次开发调用:支持数据集管理. ...
- Java开发导入腾讯地图描点_腾讯地图点聚合开发-实现地图找房功能
链家实现的效果 分析 链家的地图找房主要分为三层.第一层为市区层,比如南山.罗湖等:第二层为片区,比如南头.科技园等:第三层则为小区. 因为第一层,第二层的数据没有那么多,这两个接口都是把所有的数据一 ...
- restful api接口规范_如何理解RESTful API设计规范?
作者:涂根华 https://www.cnblogs.com/tugenhua0707/p/12153857.html RESTful是目前最流行的API设计规范,它是用于Web数据接口的设计.从字面 ...
- java web api 版本控制_怎么做 Web API 版本控制?
简评:这是 fly.io分享的一篇文章,讲了他们是怎么对自家 REST API 做版本控制的.另外还有很多其他的技术文章,个人感觉还不错,感兴趣的同学可以看一看. API 设计是一个都快被说烂了的主题 ...
- echart 地图 某个地区_中国饮食地图来袭!你爱的口味暗藏健康隐患吗?
食,既是人生存之根本,也是人们热爱生活的体现. 中国地域广阔.物产富饶,中国人对"吃"看重也愿钻研,种种因素造就了中国美食 "百花齐放"的局面,在"吃 ...
- android手机api等级_什么是Android API 级别?
什么是 API 级别? API 级别是一个对 Android 平台版本提供的框架 API 修订版进行唯一标识的整数值. Android 平台提供了一种框架 API,应用可利用它与底层 Android ...
最新文章
- Android 跳转Activity 的时候出现闪屏问题处理
- Trailblazer —— Rails 的扩展概念驱动开发框架
- 一个关于c++string比较的问题
- Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识
- 两个实用的Python的装饰器
- “数说”——数据的三重身份
- 装饰者模式-继承模式和接口模式
- C语言课后习题(49)
- apache服务器进程配置文件是,apache服务器进程配置文件是
- “error LNK2019: 无法解析的外部符号”之分析
- access 记录集 filter find属性_[网页编程]-07 jQuery 操作页面元素属性
- 【优化算法】杂草优化算法(IWO)【含Matlab源码 1076期】
- 三菱PLC开发环境搭建笔记
- 使用Cytoscape 的BinGO插件绘制GO通路关系图
- 《画解数据结构》三十张彩图,画解二叉搜索树
- 对接萤石平台调用播放
- 淘宝客引流玩法介绍(一)
- Java 关于中文乱码问题的解决方案与经验【转载】
- Go Http 解析 text/plain
- 计算机地址输入法教案,《汉字输入法》教案
热门文章
- 在c语言中除法运算符,c – 不需要的除法运算符行为,我该怎么办?
- axis2 java客户端内存溢出怎么办_java - Axis2-总是出现404错误 - 堆栈内存溢出
- rsa python实现_RSA算法python实现
- android打开视频噔_android: 播放视频
- Java项目如何改成maven_普通java项目改进为maven:ecplise
- aix 查看目前java进程_问一个 AIX 的命令 ps -ef|grep java
- java joptionpane调整大小_JAVA应用性能监控之JVM层GC调优
- carplay是否可以用安卓系统_是否可以仅用键盘来操作Windows 10系统和Windows 10应用?...
- lnmp中怎么运行ngin和mysql_安装LNMP(Nginx+Mysql+PHP)
- PyTorch中的数据输入和预处理