python爬取饿了么的实例

  介绍

小编给大家分享一下python爬取饿了么的实例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

在学数据可视化,缺少点数据进行实操,就想着从饿了么上面爬点外卖店信息。

主要是获取数据,所以代码比较简陋,直接上代码:

导入请求   进口json   导入csv   def crawler_ele(=0页):   def get_page(页面):   url=& # 39; https://h6.ele.me/restapi/shopping/v3/restaurants?latitude=xxxx&经度=xxxx&抵消={页面},限制=8,终端=代替# 39;.format(页面=* 8)   头={   “user-agent":“Mozilla/5.0 (Windows NT 10.0;Win64;x64) AppleWebKit/537.36 (KHTML,像壁虎)Chrome/71.0.3578.80 Safari 537.36“,   & # 39;饼干# 39;:" # 39;xxxx # 39;   }   re=json.loads (requests.get (url,头=标题)。text)   返回重新   re=get_page(页面)   如果re.get(& # 39;项目# 39;):   张开(& # 39;data.csv& # 39;, & # 39;一个# 39;,换行符=& # 39;& # 39;)f:   作家=csv.DictWriter (f,字段名=[& # 39;名称& # 39;,& # 39;月销售量& # 39;,& # 39;配送费& # 39;,& # 39;起送价& # 39;,& # 39;风味& # 39;,& # 39;评分& # 39;,& # 39;配送时长& # 39;,& # 39;评分统计& # 39;,& # 39;距离& # 39;,& # 39;地址& # 39;])   writer.writeheader ()   项目在re.get(& # 39;项目# 39;):   信息=dict类型()   餐厅=item.get(& # 39;餐厅# 39;)   信息(& # 39;地址& # 39;]=restaurant.get(& # 39;地址# 39;)   信息(& # 39;配送费& # 39;]=restaurant.get (& # 39; float_delivery_fee& # 39;)   信息(& # 39;名称& # 39;]=restaurant.get(& # 39;名字# 39;)   信息(& # 39;配送时长& # 39;]=restaurant.get (& # 39; order_lead_time& # 39;)   信息(& # 39;距离& # 39;]=restaurant.get(& # 39;距离# 39;)   信息(& # 39;起送价& # 39;]=restaurant.get (& # 39; float_minimum_order_amount& # 39;)   信息(& # 39;评分& # 39;]=restaurant.get(& # 39;评级# 39;)   信息(& # 39;月销售量& # 39;]=restaurant.get (& # 39; recent_order_num& # 39;)   信息(& # 39;评分统计& # 39;]=restaurant.get (& # 39; rating_count& # 39;)   信息(& # 39;风味& # 39;]=restaurant.get(& # 39;口味# 39;)[0]. get(& # 39;名字# 39;)   writer.writerow(信息)   #打印(信息)   如果re.get (& # 39; has_next& # 39;)==True:   crawler_page(+ 1页)   crawler_ele (0)

在这里简单注释几句:

url中的经纬度去掉了,可以自行查询添加需要爬取地点的经纬度,也可以通过调用地图api获取经纬度;

头需要加饼干,不然会有登录权限限制爬取页数;

最后调用的是递归不是循环,所以保存结果的csv文件里面会有多个重复表头,可以用Excel打开删除重复值就可以了。

以上是python爬取饿了么的实例的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

python爬取饿了么的实例