作者介绍:Kying,西二旗程序单身汪一枚。从事智慧旅游、数据挖掘。新晋python 小白,希望与志同道合者一起煮酒论英雄,数据森麟公众号(ID:shujusenlin)特邀作者。
数据爬取三步曲之前方有坑
工作需求需要采集OTA网站的美食数据,某个城市的饭店类型情况等。对于老饕来说这不算个事。。。然而最后的结果是中午晚饭都没有时间去吃了。。。情况如下
Chrome F12直接定位get请求,response的结果是json,研究下get的参数发现有个奇怪的参数token?!
先不管他直接修改参数翻页请求数据!!!
数据爬取三步曲之开始填坑
问题来了!纠结半天后发现这个token是有时效的,而且是js生成的。。。这也不是问题,get请求行不通我们还有selenuim。悲催的是美团真的是大厂直接封杀selenuim
数据爬取三步曲之将坑填平
又回到原点。没办法只能从token下手了经过一番查找发现一个js文件
嗯。。。好吧继续,因为之前没有用python直接调用js,百度一番发现pyexecjs、PyV8等都可以。悲催的是我的python2.7安装pyexecjs后一直不能正常使用,PyV8没有问题。只是PyV8安装过程太心酸
废话不多说直接上代码:
我把js文件存放到本地python直接使用PyV8直接解析执行token的js事件
程序自动生成token,迫不及待接续解析json数据入库
测试完成先抓取北京和上海数据进行数据可视化
在统计师发现美团还是对数据经行了限制每个类型的餐饮场所最多显示每页32个一共32页。也就是32*32=1024个
数据可视化
北京、上海美食各类型数量占比情况
看以看出川湘、烧烤烤肉和西餐在两地的数量占比都是最多的。撸串、麻小果然不分南北。
数据中有每家店的品论数量我们可以从中分析出每一类美食的总评论情况来展示受欢迎情况,因展示效果我们只展示top10
北京、上海市top10美食情况
北京和上海两地火锅荣登榜首哈
下面我们对比下两地同类美食的平均价格的情况:
魔都消费水平已经超过帝都啦。。。哈哈哈
以上只是个人简单分析不代表权威发布仅供娱乐,欢迎各界朋友交流学习。
好了我的泡面好了。。。嗯真香!!!
◆◆◆◆◆
数据森麟
数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以通过扫描下方管理员二维码,让管理员帮忙拉进群,期待大家的加入。
管理员二维码:
领取专属 10元无门槛券
私享最新 技术干货