加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

用Python说明统计必胜客餐厅

发布时间:2018-12-10 23:21:51 所属栏目:教程 来源:极客猴
导读:在之前的一篇文章100行代码爬取世界全部必胜客餐厅信息,我讲到怎样爬取必胜客长网中世界各多半聚餐厅的信息。固然餐厅数据信息被抓取下来,可是数据一向在硬盘中躺尸。未曾记得,本身已经第 n 次这么做了。说到这里,要追溯到本身的大学年华。 本身从大学
副问题[/!--empirenews.page--]

在之前的一篇文章100行代码爬取世界全部必胜客餐厅信息,我讲到怎样爬取必胜客长网中世界各多半聚餐厅的信息。固然餐厅数据信息被抓取下来,可是数据一向在硬盘中“躺尸”。未曾记得,本身已经第 n 次这么做了。说到这里,要追溯到本身的大学年华。

本身从大学开始就打仗 Python,其时是本身的好奇心很凶猛。好奇为什么 Python 不必要赏识器就能抓取网站数据。心田叹息到,,这的确是太妙了。本身为了体验这种抓取数据的爱好,以是写了许多的爬虫措施。

跟着本身常识面地拓展,本身相识到数据说明这规模。本身从而才知道爬取到的数据,原本背后还潜匿的一些信息。本身也是在进修这方面的相干常识。这篇文章算是数据说明的童贞稿,首要内容是从数据中提取出必胜客餐厅的一些信息。

01情形搭建

百度前端技能部开源一个基于 Javascript 的数据可视化图表库。其名字为 ECharts。它算是前端数据可视化的利器,能提供直观,活跃,可交互,可本性化定制的数据可视化图表。

海内有个大神突发奇想,这么好用的库假如能和 Python 团结起来就好了。于是乎,pyecharts 库就应运而生。因此,pyecharts 的浸染是用于天生 Echarts 图表的类库。本文中的全部图标,本身都是操作 pyecharts 天生的。

安装该库也很简朴,行使 pip 方法安装。

  1. pip install pyecharts 

02数据洗濯

数据洗濯事变是数据说明必不行少的步调。这一步是为了洗濯一些脏数据。由于也许网站自己就有空数据,可能匹配抓取网站信息时,有些紊乱的数据。这些都必要破除去。

我之前是将数据写到一个 json 文件中,我先将数据读取出来。然后把 json 文本数据转化为字典范例。

  1. def get_datas(): 
  2.     """ 从文件中获取数据 """ 
  3.     file_name = 'results.json' 
  4.     with open(file_name, 'r', encoding='UTF-8') as file: 
  5.         content = file.read() 
  6.         data = json.loads(content, encoding='UTF-8') 
  7.         # print(data) 
  8.     return data 

接着对字典举办遍历, 统计每个都市的餐厅总数。

  1. def count_restaurants_sum(data): 
  2.     """ 对字典举办遍历, 统计每个都市的餐厅总数 """ 
  3.     results = {} 
  4.     for key, value in data.items(): 
  5.         results[key] = len(value) 
  6.         # print(key, len(value)) 
  7.     return results 

再将字典中的每个 key-value 转化为元组,然后按照 value 举办倒序排序。

  1. restaurants_sum = sorted(restaurants_sum.items(), key=lambda item: item[1], reverse=True) 

最后按照表现功效,手动删除一些脏数据。

  1. def clean_datas(data): 
  2.     """ 
  3.     破除脏数据。 
  4.     颠末说明发明 ('新区', 189), ('南区', 189), ('向阳', 56) 是脏数据, 必胜客长网的地域选项中就有这三个名字 
  5.     [('新区', 189), ('上海市', 189), ('南区', 189), ('北京市', 184), ('深圳', 95), 
  6.      ('广州', 86), ('杭州', 78), ('天津市', 69), ('向阳', 56), ('苏州', 54)] 
  7.     """ 
  8.     data.remove(('新区', 189)) 
  9.     data.remove(('南区', 189)) 
  10.     data.remove(('向阳', 56)) 
  11.     return data 

到此,数据事变已经完成。

03数据说明

我们已经拿到了颠末洗濯的数据,我们简朴对数据举办打印,然后绘制直方图。

  1. def render_top10(): 
  2.     """ 
  3.     绘制直方图表现 世界必胜客餐厅总数 Top 10 的都市 
  4.     按照洗濯事后数据的功效, Top 都市如下 
  5.     ('上海市', 189), ('北京市', 184), ('深圳', 95), ('广州', 86), ('杭州', 78), 
  6.     ('天津市', 69), ('苏州', 54), ('西安', 52), ('武汉', 51), ('成都', 48) 
  7.     """ 
  8.     attr = ["上海", "北京", "深圳", "广州", "杭州", "天津", "苏州", "西安", "武汉", "成都"] 
  9.     values = [189, 184, 95, 86, 78, 69, 54, 52, 51, 48] 
  10.     bar = Bar("世界各多半会必胜客餐厅数目排行榜") 
  11.     bar.add("总数", attr, values, is_stack=True, is_more_utils=True) 
  12.     bar.render("render_bar.html") 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读