60万餐厅数据为你画出全国美食地图(附技术讲解)

您所在的位置:网站首页 手绘全国美食 60万餐厅数据为你画出全国美食地图(附技术讲解)

60万餐厅数据为你画出全国美食地图(附技术讲解)

2023-08-18 18:31| 来源: 网络整理| 查看: 265

640?wx_fmt=png

来源:大数据前沿

本文多图,建议阅读10分钟。

本文以省份为界限统计了各省餐厅的推荐菜,以及餐厅品牌等信息,发现了一个可怕的事实,竟然全国人民都爱吃金针菇,也发现了很多具有“地域特色”的菜品。

早就想统计一下某团的美食数据,拖了很久,终于写代码把全国所有的美食数据抓了下来,一共有60万家餐厅。

本文以省份为界限统计了各省餐厅的推荐菜,以及餐厅品牌等信息,发现了一个可怕的事实,竟然全国人民都爱吃金针菇(see you tomorrow);也发现了很多具有“地域特色”的菜品。

快来找找你的家乡人民最爱吃的菜吧。

一. 统计概况

小编将60万餐厅在地图上进行了可视化,不过该图并没有达到我的预期效果。我认为60w数据应该比当前壮观,不过从可视化文件看上去餐厅的数量真有点“寥寥无几”,我分析了一下原因,大致是因为:

数据中的餐厅过度集中,导致可视化后亮点聚拢在一起。从地图上看,高亮地区主要集中在北京、长三角、珠三角和成渝地区。

数据的经纬度坐标精度不够,导致可视化后亮点很大程度的重叠,也有可能是我抓取的数据被投毒了。

640?wx_fmt=png

省份维度的统计:

以下两张图分别是地图可视化图和条形图,可以看见,广东省的餐厅最多,大约有6.6万家。

总的来说沿海地区的省份餐厅数量稍微多一些,影响因素主要在于人口、餐饮业、以及互联网的普及程度,因为O2O的餐饮模式,部分地区的店铺并没有挂在网上。

640?wx_fmt=png

640?wx_fmt=png

城市维度的分析:

以下两张图是城市维度的可视化,很明显,第一张图中,圆圈越大代表餐厅越多,其中4座超一线城市——北上广深全部上榜。

当然另外两座城市上榜也是毫无疑问的,两座以吃著名、来了就不想走的城市——成都和重庆。

640?wx_fmt=png

恭喜成都喜提第一!

640?wx_fmt=png

二. 各省餐厅推荐菜

下面我们来看看各地餐厅的热门菜。

首先来看整体情况,全国餐厅中的推荐菜top100:

金针菇三个大字映入眼帘,对,金针菇是排第一的!我真的是好奇为什么,see you tomorrow 有这么大的魅力?除此之外看不出什么地域特色。

640?wx_fmt=png

先来看看北京和上海,因为北京的外来人口较多,且各个地方的人都有,所以菜品也都比较大众,特色菜并不明显。上海我不太了解,但是在北京,酸梅汤应该是大部分餐厅都有的,麻辣香锅、宫保鸡丁、烤鸭、烤鱼,都是经常吃的。代金券这个梗我以为只有北京有,没想到上海也有哇。因为北京的O2O餐饮很发达,很多餐厅都直接把代金券写进了推荐菜里。

北京:

640?wx_fmt=png

上海:

640?wx_fmt=png

再来看看沿海地区,福建和广东最有特色。

福建:从菜品上来看,已经有一些沿海的味道了。

640?wx_fmt=png

广东:牛肉丸可以理解,金针菇呢?茶位是指喝茶的地方吗?求解释。

640?wx_fmt=png

看了沿海,我们再来看看极具特色的重庆和四川。

重庆:看着就是一股火锅的味道,是嘞,次火锅儿要次油碟,毛肚要次鲜的,吃火锅要老油,红汤锅底,无骨凤爪,耗儿鱼,鹌鹑蛋,鸭肠,麻辣牛肉不能少,吃完火锅还要吃点西瓜、喝点银耳汤。重庆——一座红彤彤的城市。

640?wx_fmt=png

四川:和重庆一样,要吃油碟,还要吃红糖糍粑。

640?wx_fmt=png

海南:文昌鸡是必须的;椰子饭啥味道,没吃过,不过好想吃。海南,有海鲜的味道。

640?wx_fmt=png

下面,再来看看其他省吧!

安徽:

640?wx_fmt=png

甘肃:

640?wx_fmt=png

广西:青菜?

640?wx_fmt=png

贵州:纸巾乱入了哦。

640?wx_fmt=png

河北:小蛋糕,很可爱的感觉。

640?wx_fmt=png

河南:烩面、凉菜、豆腐皮。

640?wx_fmt=png

黑龙江:黑龙江人是真的很爱吃串,锅包肉和提拉米苏我是服的。

640?wx_fmt=png

湖北:

640?wx_fmt=png

湖南:湖南人民有点辣哦!

640?wx_fmt=png

吉林:

640?wx_fmt=png

江苏:

640?wx_fmt=png

江西:

640?wx_fmt=png

辽宁:

640?wx_fmt=png

内蒙古:真的超级多蛋糕店哦!还有牛羊肉!

640?wx_fmt=png

宁夏:

640?wx_fmt=png

青海:

640?wx_fmt=png

山东:

640?wx_fmt=png

山西:

640?wx_fmt=png

陕西:

640?wx_fmt=png

天津:也是代金券的节奏哦。

640?wx_fmt=png

西藏:好想吃下藏式火锅哦。

640?wx_fmt=png

新疆:

640?wx_fmt=png

云南:洋芋,好亲切,其实就是土豆的意思。

640?wx_fmt=png

浙江:

640?wx_fmt=png

三. 各省霸屏店铺统计

还是先来看看全国的概况:连锁店霸屏了,说实话,我还真不知道正新鸡排~

有一种预感就是接下来各省都要被正新鸡排和肯德基霸屏了,当然也会有例外。

640?wx_fmt=png

就先拿先拿北上广来说,北京、上海、广东的外来人口相对较多,吃的东西应该比较“大杂烩”,不过还是很能看出特点,

北京:北京的呷哺呷哺到处可见,小编也吃过好多好多次了,金凤成祥、虾吃虾涮、吉野家、张亮麻辣烫,这都是围绕帝都人民红店。

还有嘉和一品,简直是小编点外卖的专用餐厅。奇怪的是,在北京没正新鸡排没上榜。

640?wx_fmt=png

上海:正新鸡排妥妥第一,奶茶店也不少,甜点偏多。

640?wx_fmt=png

广东:正新鸡排、肯德基、华莱士通通上榜,当然少不了的是各种茶。感觉广东人民的生活很是精致。

640?wx_fmt=png

再来看看极具特色的重庆和四川:

重庆:一只酸奶牛和一口酸牛奶?从来没听过,求解释。

640?wx_fmt=png

四川:还是一只酸奶牛,可能是重庆四川人民刚刚吃完火锅要喝点奶润润喉。

钢管厂五区小郡肝串串香,熟悉的感觉。

640?wx_fmt=png

黑龙江:秋林里道斯妥妥上榜,哈哈,小编也是喝过格瓦斯吃过红肠的人。

640?wx_fmt=png

吉林:这个很有意思啊,辣怪鸭和辣小鸭是什么关系?

640?wx_fmt=png

我们再来看看福建和海南。

福建:向阳坊是什么?感觉很具地方特色。

640?wx_fmt=png

海南:椰子鸡很好吃吗?小编还看到了重庆刘一手火锅,哈哈。

640?wx_fmt=png

安徽:

640?wx_fmt=png

甘肃:词云结果挺有意思的,店铺名字很独特。

640?wx_fmt=png

广西:

640?wx_fmt=png

贵州:

640?wx_fmt=png

河北:

640?wx_fmt=png

河南:

640?wx_fmt=png

湖北:

640?wx_fmt=png

湖南:前文所讲的辣椒炒肉是哪个餐厅卖的,怎么看不出来了呢?

640?wx_fmt=png

江苏:

640?wx_fmt=png

江西:

640?wx_fmt=png

辽宁:

640?wx_fmt=png

内蒙古:

640?wx_fmt=png

宁夏:查了下,麦尔乐是一家蛋糕店。

640?wx_fmt=png

青海:

640?wx_fmt=png

山东:说真的,重庆鸡公煲并不是重庆菜,而是一个叫做张重庆的人发明的,重庆就这样被碰瓷了。

640?wx_fmt=png

山西:

640?wx_fmt=png

陕西:

640?wx_fmt=png

天津:

640?wx_fmt=png

西藏:

640?wx_fmt=png

新疆:

640?wx_fmt=png

云南:

640?wx_fmt=png

浙江:

640?wx_fmt=png

四. 写在最后

下面是技术实现讲解:

1. 数据抓取

本次数据抓取同样采用的是scrapy。

难点1:分析阶段,要想拿到全国全量的数据,必须要以街区为单位。主要原因是每个列表页默认只展示30页,每页大约20条消息,如果我们以城市维度去抓取,相当于每个城市只能至多拿到600个店铺的消息。

那按街区抓取是什么意思?

举个例子:

北京市-海淀区-双榆树

分别对应了:

市级行政单位-区级行政单位-街区

小编找了好多个繁华的街区查看,每个街区店铺的列表都没有超过30页,这就保证我们能拿到全量数据。

难点2:列表页只能拿到店铺的基础信息,还需要抓取店铺的详情页面,共超过60万个页面,IP封禁厉害,需要有足够多的ip和代理随机算法。

2. 可视化

本次可视化一如既往的应用echarts。

具体实现和相关的代码小编在文章《开源一段代码-微信好友分析》中已录视频进行讲解,感兴趣的朋友可以参考那篇文章,所用到的技术是一致的。

唯一一点不同是,这里的60万餐厅全量可视化用pyecharts实现不了。因为pyecharts的原理是利用python生成html和JavaScript文件,直接将数据写入html文本,生成后有几百MB的大小,打开的时候会导致浏览器崩溃,所以这里小编是用的原生的JavaScript读取Json数据文件实现。

640?wx_fmt=png

640?wx_fmt=jpeg



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3