百度API、python和arcgis如何做区域竞合

2023-05-19,,

今天给大家介绍一下百度API、python和arcgis如何做区域竞合。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。

  1  

BAT的产品大家都在用,百度地图大家用的挺多,比如感冒了要出门买药,可能要在百度地图上找最近的药店;出门取钱找银行;或者自习要找个图书馆之类的。百度地图很好的找到了适合的地方。

事情起因是我在做一个辽阳的项目,项目的持有方想在自己的地上建个漂流,领导让我找一下辽宁省沈阳周边同类的项目。按传统的做法,可能就是百度地图用关键词搜索,看看漂流的分布,然后一个个整理汇总。

前段时间了解到很多大的互联网公司都提供API(开发者应用程序的接口),于是我就想到要用该技术来做一个有表格有地图分布的区域竞合。

  2  

由于我是在pc端做的,先来介绍下我要搜索的内容,百度地图得到的大概的样子如下:

搜索关键词在左边,省、城市的列表在右边

可以看到辽宁漂流在各市的分布

上面两个可以做简单的列表跟地图示意,我要做的是市一级的分布,而且后面可以看到有些漂流是一个景点,被当成了好几个,必须经过人工判断刷选!

百度地图API:(网址:http://api.map.baidu.com/lbsapi/cloud/index.htm

步骤如下:进入网址—百度地图API产品—WEB服务API—地点检索服务—服务文档。我要做的是按区域进行检索,在这个页面主要是获得带json数据的url地址,如下图:

箭头所指为url

申请AK,在服务文档页面可以进入申请ak的页面,直接申请就可以。注意IP白名单的设置为:0.0.0.0/0,如下图:

这样我就获得了我的ak,检索的内容根据自己需要的变化就可以,获得数据的URL:

http://api.map.baidu.com/place/v2/search?query=漂流&region=本溪&output=json&ak=QhqVRWoXovf0EtoSe2WbwC5W5Uc4Q7zG
输入浏览器地址栏如下图:

含经纬度信息、名称、地址所在城市

这一步完成后百度API的工作基本完成。获取的url是给python抓取数据做准备。

  3  

步骤2就是将网址中json数据存进Excel文件中,代码实例我就不方便粘贴出来了,那样有点像csdn的帖子,如下图:

url用途、json模块用途

代码后半部分、xlwt用途

这部分爬虫学习了下json、xlwt两个模块,其他的用到的都是python基础知识,爬取的数据保存到本地的excel文件中,打开如下:

红色部分为同一景点

做完这一步,接下来就是把数据刷选整理去重,经纬度在excel中分别将数据分成两列(这个方法就是用符号分割列),数据准备好就进入最后一步,地图上进行落位。

  4  

在用Arcgis处理前,还要进行一个步骤,百度得到的经纬度是用的百度坐标系,我们需要的是地球坐标,需要用到坐标转换工具:

万能坐标转换(未来交通实验室出品)

经过一系列的操作,我得到了最终想要的数据,带经纬度信息的辽宁各市的漂流数据,表格如下:

Arcgis处理步骤:打开arcmap,导入世界地图的底图(添加数据—添加底图—选择中国地图灰色版),然后再导入XY坐标数据(文件—添加数据—添加xy数据)注意选择地理坐标系如图:

选择我们准备的表格、对应好经纬度

最后需要调节下点得坐标,导图图片。最后结合着表格,地图落位,根据OTA网站上的数据绘制成下面的三张PPT,完成领导交给我的任务:

辽宁漂流表格数据

辽宁漂流地理分布

选取几个对标项目案例分析总结

以上就是百度API、python和arcgis如何做区域竞合的全部内容了,更多与百度API、python和arcgis如何做区域竞合相关的内容可以搜索本站之前的文章或者浏览下面的文章进行学习哈!相信小编会给大家增添更多知识,希望大家能够支持一下本站!

《百度API、python和arcgis如何做区域竞合.doc》

下载本文的Word格式文档,以方便收藏与打印。