数据可视化分析:豆果美食网的数据爬取比较简单

优采云 发布时间: 2021-06-15 01:26

  数据可视化分析:豆果美食网的数据爬取比较简单

  前言

  这是一个发生巨大变化的中国,人和食物的流动速度比以往任何时候都快。最近,J哥为了寻找中国,跑遍了一个五线城市的大街小巷,除了累什么也没找到。

  于是,J先生默默的点开了豆果美食、厨房、美食世界等各大美食网站,经过筛选,我们终于抓取到了豆果网发布的总共3032道中国菜食谱,然后清理数据并进行可视化分析,试图走上美食博主的广阔道路。

  斗果美食网的数据爬取比较简单。如果你对爬虫感兴趣,可以看看。

  

  本次抓取的数据范围为川菜、粤菜、湘菜等8个中国菜系,包括菜谱名称、链接、素材、评分、图片等字段。限于篇幅,只给出核心代码。

   1# 主函数

2def main(x):

3    url = 'https://www.douguo.com/caipu/{}/0/{}'.format(caipu,x*20)

4    print(url)

5    html = get_page(url)

6    parse_page(html,caipu)

7

8if __name__ == '__main__':

9    caipu_list = ['川菜', '湘菜','粤菜','东北菜','鲁菜','浙菜','湖北菜','清真菜'] #中国菜系

10    start = time.time()  # 计时

11    for caipu in caipu_list:

12        for i in range(22):

13            # 爬取多页

14            main(x=i)

15            time.sleep(random.uniform(1, 2))

16            print(caipu,"第" + str(i+1) + "页提取完成")

17    end = time.time()

18    print('共用时',round((end - start) / 60, 2), '分钟')

  短短几分钟,3032 条菜谱信息就被爬下来了。为了便于可视化分析,需要对抓取到的数据进行简单的清理。

  本文的数据清洗主要使用 Python 的 Pandas 库。

  

  导入数据

  使用pd.read方法导入爬取的配方数据并添加列名。预览数据如下:

  

  删除重复项

  在爬取过程中重复爬取少量配方数据,需要使用drop_duplicates方法删除。

  

  缺失值处理

  通过info方法发现少量记录收录缺失值,使用dropna方法删除。

  

  得分场地清洁

  爬取的分数字段收录冗余字符串并且是对象类型。多余的字符串需要替换,转换为数值类型,方便后续计算。

  

  添加物料编号字段

  为了便于分析配方中使用的食材,需要根据食材字段计算每个配方中使用的食材量。由于材质字段都是用逗号分隔的,所以可以通过计算逗号的个数来间接得到。

  

  本文的数据可视化主要使用pyecharts库,可以轻松实现炫酷的图表效果。对可视化感兴趣的可以查看上一期J Ge原创文章《数据可视化分析系列》,涉及房地产、电商、招聘等领域。

  食谱分数分布

<p> 1from pyecharts import options as opts

2from pyecharts.charts import Page, Pie

3cut = lambda x : &#39;4分以下&#39; if x 

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线