干货 | 10分钟教你用Python获取百度地图各点的经纬度信息

简介: 干货 | 10分钟教你用Python获取百度地图各点的经纬度信息

Python确实是个好东西,可以用来解决很多数据上的烦恼。结合现在各个平台提供的API,可以用Python做很多有用的需求哦~


微信图片_20220422154953.jpg

需求分析

之前写论文的时候,就有这个需求了。就是抓取百度地图上某些特定的点的信息,生成测试算例去做算法后期的实验。比如下面地图:


微信图片_20220422154957.jpg


现在需要爬取地图上搜索出来的“超市”这些点的相关信息,主要包括经纬度、地点名称啊等等。


首先,最笨的办法当然是先去百度地图坐标拾取系统查,然后在一个一个复制黏贴到文档上:


微信图片_20220422154959.jpg


这种办法费时费力,不符合我们的社会主义核心价值观,而且好像一次只能好到150个点(不知道怎样才能获取更多点,知道的小伙伴可以告知一下),但我们需求的点肯定不止这么少的:

微信图片_20220422155002.jpg


所以,得想想办法,能不能用一些自动化脚本,自动爬取数据保存成所需要的格式呢?

百度地图POI

然后百度了一下,偶然了解到了百度地图POI数据这个东西。


什么是POI呢?POI是一切可以抽象为空间点的现实世界的实体,比如餐馆、酒店、商城等,POI数据具有空间坐标和各种属性,是各种地图查询软件的基础数据之一。


百度地图作为国内顶尖的地图服务提供商,含有丰富的POI数据,那要如何快速获取百度地图POI兴趣点数据呢?——当然要通过Python+爬虫来完成此任务啦~~


POI数据获取的关键在于构造出合适的url,访问该url便能请求到相应的POI数据。

前期准备

在开始之前,我们需要做一些准备工作,申请一个账号和密钥,才能调用百度地图的API进而获取所需的数据。


首先要登陆百度地图开放平台http://lbsyun.baidu.com/,完成注册。这个平台是百度地图为开发者提供接口用的,有很多其他的功能,这里只讲POI爬取相关。


微信图片_20220422155005.jpg

注册登录后,在右上角进入控制台


微信图片_20220422155008.jpg


然后找到左边应用管理下的我的应用,创建一个应用:


微信图片_20220422155011.jpg


然后,输入应用名称,应用类型选择服务端,把地点检索给勾选上。参考文档可以看具体的API调用方法。


微信图片_20220422155015.png


值得注意的是,IP白名单的设置,如果想任意IP调用就写上0.0.0.0/0,避免麻烦我们选择这个。


创建完成后我们会得到这样一个应用的AK,就是访问密钥:

微信图片_20220422155018.png


在开发文档里找到Web服务API


微信图片_20220422155021.png


选择地点检索V2.0服务文档,我们会看到使用说明:


微信图片_20220422155023.png


其实就是通过一个编辑好的URL,请求数据,然后服务器返回相应的信息。比如使用行政区划区域检索武汉市内的超市信息,则可以编辑:


http://api.map.baidu.com/place/v2/search?query=超市&region=武汉&output=json&ak=刚刚创建的应用AK


输入浏览器后回车即可得到想要的信息:


微信图片_20220422155026.png


怎样,是不是非常简单呢!今天先介绍到这里,后续我们还会介绍几种地点检索方式以及注意的事项等


也会介绍如何根据获取的经纬度信息爬取各点之间的真实距离以及行车时间等信息大家可以小小期待一下哦~

相关文章
|
API Python
VIN码查询API的实战指南:获取二手车信息以Python为例
随着机动车保有量上升,中国二手车市场迎来发展机遇。本文介绍如何通过VIN码查询API获取车辆详细信息,提升交易透明度与安全性。
522 1
|
12月前
|
前端开发 数据安全/隐私保护 Python
虚拟物流单号生成器, 虚拟快递单号假物流信息, 虚拟快递单号在线生成【python框架】
这个虚拟物流单号生成系统包含以下功能:支持多种主流快递公司的单号生成
|
12月前
|
数据安全/隐私保护 数据格式 Python
快递单号模拟生成器, 虚拟物流信息在线生成,虚假快递单号生成器【python】
支持多种主流快递公司生成符合各快递公司规则的快递单号自动生成收发件人信息
|
12月前
|
JSON 前端开发 API
快递单号生成器在线, 快递单号模拟生成器, 虚拟物流信息在线生成【python】
项目包含三个主要模块:快递单号生成器核心逻辑、Flask Web应用程序和前端HTML页面
|
12月前
|
JSON API 数据安全/隐私保护
车辆五项信息查询 API 的实践指南:通过Python调用赋能车辆信息标准化
本API通过车牌号快速获取车辆五项核心信息,包括品牌、登记日期、车架号等,助力二手车评估、维修、保险等场景实现数字化转型。数据源自权威公安交管库,日更同步,毫秒级响应,满足高并发需求,符合隐私保护规范,是推动汽车后市场智能化的重要工具。
816 0
|
存储 监控 API
【Azure App Service】分享使用Python Code获取App Service的服务器日志记录管理配置信息
本文介绍了如何通过Python代码获取App Service中“Web服务器日志记录”的配置状态。借助`azure-mgmt-web` SDK,可通过初始化`WebSiteManagementClient`对象、调用`get_configuration`方法来查看`http_logging_enabled`的值,从而判断日志记录是否启用及存储方式(关闭、存储或文件系统)。示例代码详细展示了实现步骤,并附有执行结果与官方文档参考链接,帮助开发者快速定位和解决问题。
394 22
|
数据采集 存储 数据可视化
Python爬取招标信息并生成可视化分析报告
Python爬取招标信息并生成可视化分析报告
|
10月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1658 102
|
10月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
506 104
|
10月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
397 103

推荐镜像

更多