更多可以查看    http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding

地理编码示例:

以下是关于地理编码参数使用方法的示例。发送请求显示结果的JavaScript代码此处查看
请求示例:对北京市百度大厦进行地理编码查询;

http://api.map.baidu.com/geocoder/v2/?callback=renderOption&output=json&address=百度大厦&city=北京市&ak=您的ak

地理编码返回结果字段:

名称 类型 说明
status Int 返回结果状态值, 成功返回0,其他值请查看下方返回码状态表。
location object 经纬度坐标
  lat float 纬度值
lng float 经度值
precise Int 位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点。
confidence Int 可信度,描述打点准确度
level string 地址类型

json格式的返回值:

renderOption&&renderOption({"status":0,"result":{"location":{"lng":116.30775539540982,"lat":40.05685561073758},"precise":1,"confidence":80,"level":"商务大厦"}})

这对一条两条的转可以, 要大批量的呢???  一堆位置,都还没对应的经纬度,只有一个位置名称....

思路:

1. 在原位置功能上,增加1个设置经纬度的,手工编辑下,录入入库;

2. 把位置这个转成经纬度, 看看有没批量的,批量操作拿到后,先入到库;

后面直接调用接口,数据返回用就行..

怎么用程序通过百度地图API批量获取具体地址的经纬度

搬过来的,没试过,后面试试看

https://zhidao.baidu.com/question/2078225436147396308.html?fr=iks&word=js%B0%D9%B6%C8%B5%D8%CD%BCapi+%CE%BB%D6%C3%C5%FA%C1%BF%D7%AA%CE%AC%B6%C8&ie=gbk

方法一

建议使用xGeocoding工具,可以批量获得Google Earth/Google Map/百度/腾讯/高德等地图的经纬度。工具地址如下:http://www.gpsspg.com/xgeocoding/

方案二

使用Python程序,直接嵌入即可。代码如下:(需要注意的是百度API获取的是墨卡托坐标,而实际使用的是WGS84坐标。代码已添加转换,只要设定语言一致即可实现。)

#!/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'<a href="https://www.baidu.com/s?wd=%E9%BD%90%E9%BD%90%E5%93%88%E5%B0%94%E5%B8%82&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YznHndPHNBrjfYryR1mH9B0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnW0LrjczPHf1PWDYP1n4PWnsr0" target="_blank" class="baidu-highlight">齐齐哈尔市</a>龙'.encode('utf8'))
province=urllib.quote(u'<a href="https://www.baidu.com/s?wd=%E9%BB%91%E9%BE%99%E6%B1%9F%E7%9C%81&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YznHndPHNBrjfYryR1mH9B0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnW0LrjczPHf1PWDYP1n4PWnsr0" target="_blank" class="baidu-highlight">黑龙江省</a>'.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()

  

baidu地图api , 地理位置转 经纬度接口的更多相关文章

  1. ***微信LBS地理位置开发+百度地图API(地理位置和坐标转换)

    微信公众平台开发 - 获取用户地理位置 本文介绍在微信公众平台上如何使用高级接口开发获取用户地理位置的功能. 一.获取用户地理位置接口 开通了上报地理位置接口的公众号,用户在关注后进入公众号会话时,会 ...

  2. Python调用百度地图API实现批量经纬度转换为实际省市地点(api调用,json解析,excel读取与写入)

    1.获取秘钥 调用百度地图API实现得申请百度账号或者登陆百度账号,然后申请自己的ak秘钥.链接如下:http://lbsyun.baidu.com/apiconsole/key?applicatio ...

  3. 利用百度地图API,获取经纬度坐标

    利用百度地图API,获取经纬度坐标 代码很简单,但在网上没找到现成的获取地图经纬度的页面. 就是想,给当前页面传递一个经纬度,自动定位到此经纬度.然后可以重新选择,选择完返回经纬度. 效果如下: 源代 ...

  4. 批量调用百度地图API获取地址经纬度坐标

    1 申请密匙 注册百度地图API:http://lbsyun.baidu.com/index.php?title=webapi 点击左侧 “获取密匙” ,经过填写个人信息.邮箱注册等,成功之后在开放平 ...

  5. 百度地图API,根据经纬度实现车辆移动轨迹绘制

    百度地图,实现车辆轨迹绘制 实现思路: 1.根据经纬度实现车辆轨迹绘制 2.使用百度地图API的两个覆盖物实现,Polyline(折线)绘制轨迹,Marker(图标)绘制小车图标 3.将每两个坐标间连 ...

  6. 百度地图API地理位置和坐标转换

    1.由地名(省份.城市.街道等)得到其对应的百度地图坐标: http://api.map.baidu.com/geocoder/v2/?output=json&ak=你从百度申请到的Key&a ...

  7. JAVA地址通过百度地图API转化为经纬度

    public static Map getLngAndLat(String address) { Map map = new HashMap(); String url = "http:// ...

  8. Python3爬虫 利用百度地图api得到城市经纬度

    有2种方式,第一种是利用urllib , 方法1:利用urllib , 先把url 转成urlcode,然后读取网页,读到网页再用json读取内容,比较麻烦. 可以在浏览器输入,看一下格式. http ...

  9. 记录开发基于百度地图API实现在地图上绘制轨迹并拾取轨迹对应经纬度的工具说明

    前言: 最近一直在做数据可视化方面的工作,其中平面可视化没什么难度,毕竟已经有很多成熟的可供使用的框架,比如百度的echart.js,highcharts.js等.还有就是3D可视化了,整体来说难度也 ...

随机推荐

  1. java内存的分配策略

    1.概述 本文是<深入理解java虚拟机>(周志明著)3.6节的笔记整理,文章结构也与书上相同,讲述的是几条最普遍的内存分配策略. 2.对象优先在Eden分配 ** 大多数情况下,对象在新 ...

  2. python实现计算器功能

    import re def strip_operate(exp): # 合并多余的操作符 exp = exp.replace("+-", "-") exp = ...

  3. Visual Studio 跨平台開發實戰(5) - Xamarin Android 多頁面應用程式開發 (转帖)

    前言 大部份的Android 都具有實體或虛擬的Back鍵. 因此在處理多頁面應用程式時, 與先前所介紹的iOS Navigation controller 比較起來會簡單許多. 1. 開啟Visua ...

  4. (转)OpenStack —— 原理架构介绍(一、二)

    原文:http://blog.51cto.com/wzlinux/1961337 http://blog.51cto.com/wzlinux/category18.html-------------O ...

  5. Linux系统编程:进程控制

    一.进程相关操作与编程对应函数 1.进程创建:两种方式来实现. ①fork:创建一个子进程,父子进程共享一份代码程序,但是各有一份独立的数据,为了效率和保持数据的独立采用写时复制技术(COW).运行无 ...

  6. HelloStruts2

    第一个struts2项目: 前言 假 如 你 的 人 生 有 理 想,那 么 就 一 定 要 去 追,不 管 你 现 在 的 理 想 在 别 人 看 来是 多 么 的 可 笑 , 你 也 不 用 在 ...

  7. echart 时间轴、以及y轴值过大但是变化不大显示感觉不出变化的问题+弹出框拖动div事件

    1.时间轴 echart 提供了一种图表,如果x轴是一个时间范围,并且是连续的,如果用传统的数据驱动会很慢,所以用时间轴的方式 function initCurve(_data){ var resul ...

  8. C#的可空类型与不可空类型

    null:为空,表示产量没有指向任何对象, 如:string = null; int a = null;//是错的 但可以这样,在类型后面加一个问号. int? a = null;//这就是正确的,是 ...

  9. memcached 学习笔记 3

    适合什么场合 memcached不是万能的,它也不是适用在所有场合. Memcached是“分布式”的内存对象缓存系统,那么就是说,那些不需要“分布”的,不需要共享的,或者干脆规模小到只有一台服务器的 ...

  10. 什么是SharePoint?

    在聊SharePoint开发之前,有必要说下什么是SharePoint. 在我工作的过程中,经常遇到客户对SharePoint不太了解的情况.有客户说,SharePoint太烂了,DropBox能做到 ...