一、背景

(正)地理编码指的是:将地理位置名称转换成经纬度;

逆地理编码指的是:将经纬度转换成地理位置信息,如地名、所在的省份或城市等

百度地图提供了相应的API,可以方便调用。相应的说明文档如下:

正地理编码

逆地理编码

具体API的参数可以查看相应的“服务文档”:

不过首次使用时需要申请,具体在控制台。申请AK的方式可参见其他文章。

二、源码

废话不多说,直接放源码。这里提供了Python调用这两个API的方法。

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# @Author: Wild Orange

# @Email: jixuanfan_seu@163.com

# @Date: 2020-06-21 16:06:14

# @Last Modified time: 2020-07-01 19:35:28

import requests

AK='[这里填写自己申请的AK值]'

def Pos2Coord(name):

'''

@func: 通过百度地图API将地理名称转换成经纬度

@note: 官方文档 https://www.easck.com/d/file/200702/101920200702180007.html

@output:

lng: 经度

lat: 纬度

conf: 打点绝对精度(即坐标点的误差范围)

comp: 描述地址理解程度。分值范围0-100,分值越大,服务对地址理解程度越高

level: 能精确理解的地址类型

'''

url = 'https://www.easck.com/d/file/200702/102020200702180007

res = requests.get(url)

if res.status_code==200:

val=res.json()

if val['status']==0:

retVal={'lng':val['result']['location']['lng'],'lat':val['result']['location']['lat'],

'conf':val['result']['confidence'],'comp':val['result']['comprehension'],'level':val['result']['level']}

else:

retVal=None

return retVal

else:

print('无法获取%s经纬度'%name)

def Coord2Pos(lng,lat,town='true'):

'''

@func: 通过百度地图API将经纬度转换成地理名称

@input:

lng: 经度

lat: 纬度

town: 是否获取乡镇级地理位置信息,默认获取。可选参数(true/false)

@output:

address:解析后的地理位置名称

province:省份名称

city:城市名

district:县级行政区划名

town: 乡镇级行政区划

adcode: 县级行政区划编码

town_code: 镇级行政区划编码

'''

url='https://www.easck.com/d/file/200702/102220200702180007

res=requests.get(url)

if res.status_code==200:

val=res.json()

if val['status']==0:

val=val['result']

retVal={'address':val['formatted_address'],'province':val['addressComponent']['province'],

'city':val['addressComponent']['city'],'district':val['addressComponent']['district'],

'town':val['addressComponent']['town'],'adcode':val['addressComponent']['adcode'],

'town_code':val['addressComponent']['town_code']}

else:

retVal=None

return retVal

else:

print('无法获取(%s,%s)的地理信息!'%(lat,lng))

注意:

函数只返回一些较为常用的地理位置信息。之前提到的官网中的说明文档是最全的,如果确实有需要,可以修改程序代码。

python百度地图api经纬度_详解用Python调用百度地图正/逆地理编码API相关推荐

  1. python实现抽奖软件(一)_详解用python写一个抽奖程序

    第一次使用python写程序,确实比C/C++之类方便许多.既然这个抽奖的数据不大,对效率要求并不高,所以采用python写,更加简洁.清晰.方便. 1.用到的模块 生成随机数的模块random 用来 ...

  2. python提取pdf的数字_详解利用python提取pdf文本数字

    之前也不乏介绍过关于excel的内容,日常工作应用,除了excel,pdf也是经常使用的一种,关于pdf的文本提取,下面也来详细介绍~ 说明:从pdf文件中提取其他类型的数据,如文本或图像.将说明从p ...

  3. python调用百度地图画轨迹图_[python]百度地图API,正/逆地理编码,路线规划接口的调用,实现输出出行的距离和......

    [Python] 纯文本查看 复制代码''' 文件名:L17.py 作者:小饭团 创建时间:2019年1月11日15:17:03 文件描述:调用Web服务API接口,百度地图路线规划 正/逆地理编码 ...

  4. python调用百度地图实现导航pc_[python]百度地图API,正/逆地理编码,路线规划接口的调用,实现输出出行的距离和......

    [Python] 纯文本查看 复制代码''' 文件名:L17.py 作者:小饭团 创建时间:2019年1月11日15:17:03 文件描述:调用Web服务API接口,百度地图路线规划 正/逆地理编码 ...

  5. 百度地图Web服务API——正/逆地理编码服务

    正/逆地理编码服务(又名Geocoding API)是一类Web API接口服务: 正向地理编码服务提供将结构化地址数据(如:北京市海淀区上地十街十号)转换为对应坐标点(经纬度)功能: 逆向地理编码服 ...

  6. 用python3做学生管理系统_详解用python实现基本的学生管理系统(文件存储版)(python3)...

    详解用python实现基本的学生管理系统(文件存储版)(python3) 来源:中文源码网    浏览: 次    日期:2019年11月5日 详解用python实现基本的学生管理系统(文件存储版)( ...

  7. python中pandas安装视频教程_详解Python中pandas的安装操作说明(傻瓜版)

    很多人来问我pandas的安装(python数据分析里面的必修课) 步骤如下: 安装python的时候,把路径加到系统里,这样,随时可以用pip 路径添加方法: 查找路径: 路径1: 2.例如: 即: ...

  8. python selenium爬虫_详解基于python +Selenium的爬虫

    详解基于python +Selenium的爬虫 一.背景 1. Selenium Selenium 是一个用于web应用程序自动化测试的工具,直接运行在浏览器当中,支持chrome.firefox等主 ...

  9. 框架详解_详解:python Web框架flask表单实现(建议收藏)

    今天为大家带来的内容是:python框架flask表单实现详解 文章内容主要介绍了python框架flask表单实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需 ...

最新文章

  1. 蓝桥杯国赛知识点汇总
  2. 报错:java.lang.IllegalArgumentException: non null key required 错误
  3. python画樱桃小丸子的程序_多任务---线程threading使用总结。
  4. xp精简工具_Windows10你也可以精简优化,丝滑般极爽轻松做到,再也不卡了
  5. 使用Mutability Detector对Java数据类的不变性进行单元测试
  6. matlab优化设计例程,优化设计Matlab_实例解析
  7. 产品销售的过程中,价值是不断被定义和挖掘的
  8. Nginx环境搭建Discuz论坛
  9. 关于金融学和计量金融学的好书
  10. 检查Oracle数据库和PDB数据库的大小
  11. 日志分析软件 Splunk
  12. 《构建高可用Linux服务器 第3版》—— 1.5 Linux服务器的优化
  13. Qt显示wav波形图
  14. 互联网时代“陨落”,国家发布元宇宙战略的信号对失业和担心失业的我们带来了什么启迪?
  15. 小程序定制开发收费标准
  16. “警视”警务情指一体大屏可视化决策系统
  17. 50+ Best Unity Assets: Shader, Editor Extensions, Level Editors, Models, Terrain
  18. 编码时需要注意的地方
  19. 我我我我终于理解闭包了,哈哈哈哈(仰天长啸)(JavaScript闭包理解)
  20. web浏览器中的base64编码解码

热门文章

  1. 高等数学:第五章 定积分(3) 微积分基本公式
  2. html文档半结构化数据,什么是半结构化数据(semi-structured data)?
  3. 判断某整数是否既是5又是7的整数倍()
  4. 8000字解读安踏理想汽车丨打破用户体验黑箱的实战策略
  5. 韭菜简史:快招加盟的致富骗局
  6. Python绘制三维立体图详解与绘图填充
  7. vue 图表三维立体3D散点图
  8. (Python)从零开始,简单快速学机器仿人视觉Opencv---运用二:物体检测
  9. 免费网贷大数据_免费查网贷大数据的app
  10. 服装ERP软件首要的好处都有哪些?