就是牛逼|用Python调用百度地图接口,给你一个端午旅游攻略

来自:菜鸟学Python(微信号:cainiao_xueyuan),作者:小超


小编来自于山东的沿海城市日照,但是提起来日照,可能没有几个小伙伴会知道。于是小编就以青岛作为本次旅游的假想目的地,来向大家展示一下青岛的一些旅游目的地。


01.利用百度地图API


用过百度地图的小伙伴可能都知道,利用百度地图可以搜索一个地区的美食和旅游地点,因此,这就为我们的数据获取提供了渠道。要获取这些数据,可以利用百度地图开发者的平台。打开下面的网址,

http://lbsyun.baidu.com/apiconsole/key

然后注册并创建应用,获取密钥,如下图所示:


获取密钥之后,进入到web服务API,查看其开发者开发文档。可以看到里面有按照行政区域搜索,按照矩形区域搜索和按照圆形区域搜索。并有请求参数和返回参数的详细解释,如下图所示:


02.获取数据


有了数据的接口,我们便可以利用requests,对于数据进行请求,并利用

json库对于数据进行解析,部分代码如下图所示:

上述代码中,我们请求得到数据后,请求50页,每一页有8个景点的数据。利用json库解析数据,并保存我们需要的数据,这里小编按照评论人数,从高到低请求了400个旅游景点的数据,并保存了旅游景点的名字、经纬度左边信息,景点评分和评分人数。


03.可视化的展示


下图展示的是评论人数前十名景点的评分。

从图上可以看出,评论数前十的景点中,大家对于景点的整体印象还是不错的,绝大多数都是在4.0分以上,所以景点的质量大家可以放心。

有了景点的前十名信息,下面来看看对于美食评论前十名的评分。

由上图可以看出,对于青岛的美食,评论最多的还是海鲜,而且大家对于其评价都非常的高,可见大家对于海鲜的喜爱。


其实上面的可视化分析图用传统的matplotlib就可以展示,但是一般现在流行用seaborn可视化更方便,没有办法,谁叫她长的漂亮呢。

  • data是采用pandas从csv文件读入,然后我们只取前十个值,sns.set是用来设置我们的字体大小的和显示中文。

  • name_list num_list分别对应着前十个值的名字和评分,然后调用sns.barplot进行画图

  • 最后用for循环遍历标注各个柱状图上对应的数值的



04.热图分析


接下来,小编为了更加直观的展示这些旅游景点和美食的分布,决定采用热图的方式给大家展示,所谓的热图,其实就是分布的越密集,颜色也就越深,越发红。首先是对于旅游景点的展示,如下图所示:


其实这个代码很简单,大概9行搞定,主要是用第三方的库Folium,这个是专门用来绘制地图,并在地图上打点,画圈,做颜色标记的工具类。



从图上可以看到,大多数的旅游景点,都集中分布在沿海地带,因为青岛作为滨海城市,沿海风光是绝对的王牌。

接下来是对于美食地点的展示,如下图所示:

由图可以看出,美食的聚集地,不仅仅的是集中在海边,内陆也有许多美食的聚集地,这也很好理解,因为现在运输业较为发达,海鲜可以很快的进行运输,所以没有必要全都集中在沿海,而且相较于沿海,内陆地区的房租也会比较便宜。


以上就是小编为大家带来的新的内容展示,利用python进行有趣的探索,大家如果喜欢去其他地区旅游的话,也可以试着去探索你想去的地方。


希望大家端午假期吃好喝好,玩的开心,如果假期回来发现有啥好吃的,好玩的,记得来吱一声哦!

推荐↓↓↓
Python编程
上一篇:用Python来解读神奇宝贝 下一篇:数据采集和数据预处理