美团网美食数据爬取

640?

作者介绍:Kying,西二旗程序单身汪一枚。从事智慧旅游、数据挖掘。新晋python 小白,希望与志同道合者一起煮酒论英雄,数据森麟公众号(ID:shujusenlin)特邀作者。

数据爬取三步曲之前方有坑

工作需求需要采集OTA网站的美食数据,某个城市的饭店类型情况等。对于老饕来说这不算个事。。。然而最后的结果是中午晚饭都没有时间去吃了。。。情况如下

640

Chrome F12直接定位get请求,response的结果是json,研究下get的参数发现有个奇怪的参数token?!

 

640

先不管他直接修改参数翻页请求数据!!!

 

640

数据爬取三步曲之开始填坑

问题来了!纠结半天后发现这个token是有时效的,而且是js生成的。。。这也不是问题,get请求行不通我们还有selenuim。悲催的是美团真的是大厂直接封杀selenuim

 

640

数据爬取三步曲之将坑填平

又回到原点。没办法只能从token下手了经过一番查找发现一个js文件

 

640

嗯。。。好吧继续,因为之前没有用python直接调用js,百度一番发现pyexecjs、PyV8等都可以。悲催的是我的python2.7安装pyexecjs后一直不能正常使用,PyV8没有问题。只是PyV8安装过程太心酸

 

废话不多说直接上代码:

 

640

我把js文件存放到本地python直接使用PyV8直接解析执行token的js事件

 

640

程序自动生成token,迫不及待接续解析json数据入库

 

640

 

640

 

测试完成先抓取北京和上海数据进行数据可视化

在统计师发现美团还是对数据经行了限制每个类型的餐饮场所最多显示每页32个一共32页。也就是32*32=1024个

 

640

数据可视化

北京、上海美食各类型数量占比情况 

 

640

640

 

 

看以看出川湘、烧烤烤肉和西餐在两地的数量占比都是最多的。撸串、麻小果然不分南北。

640

 

数据中有每家店的品论数量我们可以从中分析出每一类美食的总评论情况来展示受欢迎情况,因展示效果我们只展示top10

北京、上海市top10美食情况

640

640

 

 

北京和上海两地火锅荣登榜首哈

下面我们对比下两地同类美食的平均价格的情况:

 

640

魔都消费水平已经超过帝都啦。。。哈哈哈

以上只是个人简单分析不代表权威发布仅供娱乐,欢迎各界朋友交流学习。

 

好了我的泡面好了。。。嗯真香!!!

◆ ◆ ◆  ◆ 

数据森麟
长按二维码关注我们



数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以通过扫描下方管理员二维码,让管理员帮忙拉进群,期待大家的加入。

管理员二维码:

猜你喜欢

● 

● 

● 

● 

   ● 

你可能感兴趣的:(美团网美食数据爬取)