前言
最近,本可人儿最近在学习大数据的分析和计算,正好利用所学的Spark的相关知识做一点小东西。使用的语言是python。
使用工具
爬虫:Scrapy框架和Xpath数据解析
数据存储:MysqL
数据分析:Spark 3.2.0
数据可视化:pyecharts库
IED:Pycharm
OS:Ubuntu 20.04
设计步骤
一、Hadoop和Spark的安装配置
这些工具的安装和配置都在站内可以找到,本可人儿安装的Hadoop和Spark只是本地模式,没有构建集群。
二、爬虫代码的编写
1、登录链家官网、进入二手房页面,进入二手房具体页面,观察具体需要爬取数据的位置。
2、定制爬虫
在Scrapy爬虫模板下的item.py文件中定制爬取信息,在middleware.py中编写代理中间件和随机请求头中间件,随机请求头使用fake_useragent库。在新建的爬虫文件中编写爬虫代码。修改pipeline.py,使数据存储到MysqL数据库中
本次爬取的范围为链家网站北京二手房的前50页
3、数据存储
在终端打开MysqL数据库,进入数据库,执行建表语句
爬虫执行完毕后,进入MysqL数据库中即可看见爬取的数据。
4、数据分析
通过DataFrame自带的各种操作api,通过对location字段进行分类后获取对应的price字段的最大值、最小值和平均值。
5、数据可视化
根据获取的列表数据生成柱状图,(data_x是location字段,即楼板所在区的区名,data_y1等是对应区的二手房的最大值、最小值等,name1等是maxium的名称标志)。通过option.ItemStyleOpts(color=’’)修改颜色。通过set_global_opts(xaxis_opts=option.AxisOpts(axislabel_opts={‘interval’:‘0’}))使得x轴间隔距离为0,保证所有x轴数据都能显示出
结果展示
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。