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 相关文章推荐
Python3基础之输入和输出实例分析
Aug 18 Python
python列表操作实例
Jan 14 Python
Django添加favicon.ico图标的示例代码
Aug 07 Python
python字典值排序并取出前n个key值的方法
Oct 17 Python
python re正则匹配网页中图片url地址的方法
Dec 20 Python
Python数据可视化教程之Matplotlib实现各种图表实例
Jan 13 Python
如何使用Python 打印各种三角形
Jun 28 Python
Python math库 ln(x)运算的实现及原理
Jul 17 Python
python游戏开发的五个案例分享
Mar 09 Python
在python下实现word2vec词向量训练与加载实例
Jun 09 Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 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 mb_convert_encoding文字编码的转换函数介绍
2011/11/10 PHP
PHP二维数组去重算法
2016/12/17 PHP
js 判断浏览器类型 去全角、半角空格 自动关闭当前窗口
2009/04/10 Javascript
Prototype Selector对象学习
2009/07/23 Javascript
分享一个asp.net pager分页控件
2012/01/04 Javascript
jQuery 联动日历实现代码
2012/05/31 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
js封装可使用的构造函数继承用法分析
2015/01/28 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
Bootstrap 填充Json数据的实例代码
2017/01/11 Javascript
vue-router 学习快速入门
2017/03/01 Javascript
Vue 2.0+Vue-router构建一个简单的单页应用(附源码)
2017/03/14 Javascript
js实现canvas图片与img图片的相互转换的示例
2017/08/31 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
基于 Immutable.js 实现撤销重做功能的实例代码
2018/03/01 Javascript
vuex实现登录状态的存储,未登录状态不允许浏览的方法
2018/03/09 Javascript
解决vue select当前value没有更新到vue对象属性的问题
2018/08/30 Javascript
JS实现简单的点赞与踩功能示例
2018/12/05 Javascript
使用jquery-easyui的布局layout写后台管理页面的代码详解
2019/06/19 jQuery
使用easyui从servlet传递json数据到前端页面的两种方法
2019/09/05 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
对Python新手编程过程中如何规避一些常见问题的建议
2015/04/01 Python
Python打包方法Pyinstaller的使用
2018/10/09 Python
浅析Python 实现一个自动化翻译和替换的工具
2019/04/14 Python
python腾讯语音合成实现过程解析
2019/08/01 Python
matplotlib.pyplot.plot()参数使用详解
2020/07/28 Python
python如何调用百度识图api
2020/09/29 Python
Links of London官方网站:英国标志性的珠宝品牌
2017/04/09 全球购物
BookOutlet加拿大:在网上书店购买廉价折扣图书和小说
2018/10/05 全球购物
数控技术专业推荐信
2013/11/01 职场文书
幼儿园毕业家长感言
2014/02/10 职场文书
股指期货心得体会
2014/09/13 职场文书
广告业务员岗位职责
2015/02/13 职场文书
婚育证明样本
2015/06/16 职场文书