Python爬取奶茶店数据分析哪家最好喝以及性价比


Posted in Python onSeptember 23, 2022

序篇

天气真的很热啊… 很想有一杯冰冰凉凉的奶茶来解渴~

但是现在奶茶店这么多, 到底哪一家最好喝、性价比最高呢?

数据获取

本文抓取了12个热门城市的奶茶店名单,

城市包括:北京、上海、广州、深圳、天津、西安、重庆、杭州、南京、武汉、成都和长沙。

共计68614家奶茶店,3万多个奶茶品牌。

在构建抓取URL时,

需要注意将城市的维度具体到城市商圈,

因为每个URL最多只显示32页内容,

保证抓取每个城市时的数据量是准确的。

Python爬取奶茶店数据分析哪家最好喝以及性价比

# 构建抓取URL
def get_url_1():
    for city,city_code in city_dict.items():
        for block_dict in area_dict[city]:
            for children in block_dict['children']:
                for page in range(1,33):
                    block_code = children['id']
                    offset = 32 * (page-1)
                    # print(city, area, block, block_code)
                    url = 'https://apimobile.meituan.com/group/v4/poi/pcsearch/{}?uuid=6ddabcb37fdd4a8e9cdf.1599125825.1.0.0&userid=280531290&limit=32&offset={}&cateId=-1&q=奶茶果汁&areaId={}&sort=solds'.format(city_code,offset,block_code)
                    redis_db.sadd('meituan_milk', url)

数据清洗

数据清洗部分,主要清洗了奶茶店铺名称,

但是同一个奶茶品牌会有多种格式,如1点点和1點點,

大卡司和大卡司DAKASI。

由于奶茶品牌数量众多,

并且真假难辨,所以只能进行针对性清洗,

对部分名气高的奶茶品牌名称要保证其统一。

# 清洗字段
def clean(x):
    title = re.sub(u"(.*?)", "", x['title'])
    title = title.replace('點點','点点').replace('(','').replace(')','')
    title = title.replace('一点点','1点点')
    if '一杯会说话的茶' in title:
        title = '1314一杯会说话的茶'
    elif '大卡司' in title:
        title = '大卡司DAKASI'
    elif '1点点' in title:
        title = '1点点'
    elif '都可' in title:
        title = 'CoCo都可'
    elif '书亦烧仙草' in title:
        title = '书亦烧仙草'
    elif '蜜雪冰城' in title:
        title = '蜜雪冰城'
    elif 'royal' in title or 'Royal' in title or 'ROYAL' in title:
        title = 'Royaltea皇茶'
    elif 'ALS' in title:
        title = 'ALS GONG CHA贡茶'
    elif 'GONG' in title:
        title = '贡茶'
    elif '茶百道' in title:
        title = '茶百道'
    elif '吾饮良品' in title:
        title = '吾饮良品'
    elif '悸动烧仙草' in title:
        title = '悸动烧仙草'
    elif '沪上阿姨' in title:
        title = '沪上阿姨'
    elif '7分甜' in title:
        title = '7分甜'
    elif '古茗' in title:
        title = '古茗'
    elif '奈雪' in title:
        title = '奈雪の茶'
    elif '悦色' in title:
        title = '茶颜悦色'
    else:
        pass
    return title
df['title'] = df.apply(clean, axis=1)

数据可视化

当小编在制作可视化图表的时候,

会发现有些奶茶品牌的名称极为相似,

让人有一种傻傻分不清楚的感觉。

Python爬取奶茶店数据分析哪家最好喝以及性价比

热门城市奶茶店铺数量情况

从全国12个热门城市来看奶茶店铺数量分布情况,

广州的店铺数量是最多的,拥有11419家,

之后是深圳(9367家)、上海(7940家)、成都(7361家)。

Python爬取奶茶店数据分析哪家最好喝以及性价比

特色奶茶分布情况

有些奶茶店很有自己的地域特色,

如果你想品尝它们的原版奶茶,

就可能需要跑到别的城市才能喝到,

因为它们大部分分店都只开在本土城市。

Python爬取奶茶店数据分析哪家最好喝以及性价比

大众奶茶分布情况

接下来介绍一下大众奶茶中的1点点,CoCo,书亦烧仙草和益禾堂的热门城市分布情况,

1点点和CoCo在上海的分店数量都是最多的,而书亦烧仙草在成都和长沙比较普遍,益禾堂则是在广州和深圳。

这4家奶茶品牌在广州分店数量均有上百家,也难怪走到哪都能看到这几家奶茶店。

Python爬取奶茶店数据分析哪家最好喝以及性价比

总结

此次小编只分析了12个热门城市的奶茶门店数据,

如果将范围扩展到全国进行分析,

或许能得到更多有意思的结果。

到此这篇关于Python爬取奶茶店数据分析哪家最好喝以及性价比的文章就介绍到这了,更多相关Python爬取奶茶店内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python应用程序在windows下不出现cmd窗口的办法
May 29 Python
利用Python的Flask框架来构建一个简单的数字商品支付解决方案
Mar 31 Python
Python记录详细调用堆栈日志的方法
May 05 Python
python常用知识梳理(必看篇)
Mar 23 Python
python中os和sys模块的区别与常用方法总结
Nov 14 Python
python日期相关操作实例小结
Jun 24 Python
windows中安装Python3.8.0的实现方法
Nov 19 Python
通过实例解析Python调用json模块
Dec 11 Python
django框架ModelForm组件用法详解
Dec 11 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
Jan 20 Python
关于Tensorflow分布式并行策略
Feb 03 Python
使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例
Mar 16 Python
使用python生成大量数据写入es数据库并查询操作(2)
Sep 23 #Python
Python sklearn分类决策树方法详解
详解Golang如何实现支持随机删除元素的堆
python中validators库的使用方法详解
Sep 23 #Python
Python pyecharts案例超市4年数据可视化分析
Aug 14 #Python
Python编写车票订购系统 Python实现快递收费系统
Aug 14 #Python
Golang Web 框架Iris安装部署
Aug 14 #Python
You might like
用php获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
php中eval函数的危害与正确禁用方法
2014/06/30 PHP
浅谈使用 PHP 进行手机 APP 开发(API 接口开发)
2014/08/11 PHP
php文件缓存类汇总
2014/11/21 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
2019/09/30 PHP
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
jquery获取table中的某行全部td的内容方法
2013/03/08 Javascript
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
js 事件截取enter按键页面提交事件示例代码
2014/03/04 Javascript
node.js中的fs.fsyncSync方法使用说明
2014/12/15 Javascript
微信小程序 wxapp画布 canvas详细介绍
2016/10/31 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
vue ajax 拦截原理与实现方法示例
2019/11/29 Javascript
js实现登录拖拽窗口
2020/02/10 Javascript
vue同个按钮控制展开和折叠同个事件操作
2020/07/29 Javascript
原生js 实现表单验证功能
2021/02/08 Javascript
[51:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第二局
2016/03/03 DOTA
[07:25]DOTA2-DPC中国联赛2月5日Recap集锦
2021/03/11 DOTA
pygame学习笔记(5):游戏精灵
2015/04/15 Python
编写Python脚本来获取mp3文件tag信息的教程
2015/05/04 Python
Python实现简单字典树的方法
2016/04/29 Python
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
Python编程实现控制cmd命令行显示颜色的方法示例
2017/08/14 Python
python回调函数中使用多线程的方法
2017/12/25 Python
pytorch 数据集图片显示方法
2018/07/26 Python
使用python实现男神女神颜值打分系统(推荐)
2019/10/31 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
没编程基础可以学python吗
2020/06/17 Python
HTML5拖放功能_动力节点Java学院整理
2017/07/13 HTML / CSS
幼师岗位求职简历的自荐信格式
2013/09/21 职场文书
房地产公司见习自我鉴定
2014/04/28 职场文书
体育口号大全
2014/06/18 职场文书
2014年乡镇妇联工作总结
2014/12/02 职场文书
2015毕业生简历自我评价
2015/03/02 职场文书
新员工入职感言范文!
2019/07/04 职场文书