更多可以查看    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. golang使用etcd实现分布式锁

    package main import ( "context" "fmt" "time" "go.etcd.io/etcd/cli ...

  2. java防范跨站脚本攻击(XSS)

    网络中心提示网站有数目众多的跨站脚本攻击(XSS)漏洞,经过查看代码,认为是JSP中绑定变量是未经处理直接写入的,而且整个项目中这样的做法太多,因为是多年前的,不好一个个更改,参照网上资料,通过加fi ...

  3. 工程手机设置apn

    http://android.stackexchange.com/questions/117125/how-do-i-add-an-apn-via-adb xiaomi3 su mount permi ...

  4. PHP常见缓存机制

    PHP常用的几种缓存机制_PHP教程 普遍缓存技术 数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据, ...

  5. 等价类计数问题(Polya定理和burnside引理)

    零.约定: (置换等名词会在前置知识中有解释) \(1.\)在本文中,题目要求的染色方案等统称为"元素". \(2.\)两个元素严格相等我们记做"\(=\)", ...

  6. 第十篇--------javascript函数-参数

    javascript函数的参数:形参,实参 //function 参数 //形参列表 function test(a,b,c,d){ //alert(test.length); //形参个数,4个 / ...

  7. JavaScript设计模式-19.代理模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. JavaScript设计模式-12.门面模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. C#(winform)设置窗体的启动位置

    只需要设置窗体的StartPosition属性: registerForm.StartPosition = FormStartPosition.CenterScreen; FormStartPosit ...

  10. word预览

    word+excle表格在线浏览 word.ppt.xls文件实现在线预览的方式比较简单可以直接通过调用微软的在线预览功能实现 (预览前提:资源必须是公共可访问的) 通过iframe直接引用微软提供的 ...