APP下载

基于大数据技术的房价数据采集及可视化分析应用

2021-09-05石慧陈培辉

计算机时代 2021年8期
关键词:大数据分析可视化

石慧 陈培辉

摘  要: 在“房住不炒”定位下,住房选购成了广大市民比较关心的问题。把大数据分析技术引入到房价分析,利用Scrapy爬虫框架对广州房价线上数据的爬取,经清洗和可视化,把影响房价的要素以可视化的形式予以呈现。与传统方法相比,大数据分析技术在数据采集及可视化分析应用方面优势明显。

关键词: 大数据分析; 可视化; 爬虫框架; 房价数据

中图分类号:TP399          文献标识码:A     文章编号:1006-8228(2021)08-71-05

Housing price data collection and visualized analysis with big data technology

Shi Hui, Chen Peihui

(Department of Information Engineering, Shanwei Vocational and Technical College, Shanwei, Guangdong 516600, China)

Abstract: Under the positioning of "housing without speculation", the purchase of housing has become a concern of the general public. This article introduces the big data analysis technology into the housing price analysis, and the online data of Guangzhou housing price is crawled by using the Scrapy crawler framework. After cleaning and visualization of online data, the factors affecting housing price are presented in the form of visualization. Compared with traditional methods, big data analysis technology has obvious advantages in applications of data collection and visualized analysis.

Key words: big data analysis; visualization; crawler framework; housing price data

0 引言

网络数据采集是通过网络爬虫[1]等技术从互联网采集数据的过程。网络数据采集和数据可视化具有广泛的应用范围,涉及挖掘数据可视化、文本数据可视化、交通可视化、生物医学可视化、网络数据可视化等领域。闫志国[2]等通过爬取电商药品数据并对数据可视化处理,为用户在网上买药提供参考。曹睿娟[3]等提出基于大数据的城市内涝网络舆情监测及演化机理,为内涝事件舆情应对提供决策支持。于凤芹[4]等借助动态面板模型和多重中介效应模型,研究金融科技与商业银行盈利能力的关系及中介传导机制。饶加旺[5]等构建了智慧城市文本大数据与自动分词模型,指出当前智慧城市建设中的问题。

有效地利用大数据技术,深入挖掘互联网中的数据,可以为我们提供许多有趣的信息[6],也能为消费者和商家等目标用户提供一定的参考意见和决策支持。

1 基于大数据技术的房价分析方法

本文主要利用网络爬虫技术采集58同城网的广州房价线上数据,并挖掘和分析网络数据中的信息。首先利用Xpath Helper获取返回DOM树形结构的根节点,再结合Python的Scrapy框架对广州房价的线上网站的数据进行爬取,之后调用Sqlalchemy引擎对所采集的数据进行存取,接着调用Pandas库和Numpy库中的函数,对数据进行清洗,最后结合Matplotlib库、Seaborn库以及Pyecharts库中的函数对清洗后的数据进行直观的可视化展示。

1.1 Scrapy框架

Scrapy爬虫框架是基于Python开发的一个快速、高层次的屏幕抓取和Web抓取框架,Scrapy框架主要由调度器(Scheduler)、下载器(Downloader)、爬虫(Spider)和实体管道(Item Pipeline)、Scrapy引擎(Scrapy Engine)五大组件构成[7-8]。调度器抓取网页网址或链接的优先队列,可以去除重复的网址,用户根据自己的需求定制调度器。建立在Twisted高效异步模型上的下载器用于从网络上高速下载资源。用户通过定制正则表达式等语法定制自己的爬虫,从特定的网页中采集实体信息,也可以提取鏈接让Scrapy继续抓取下一个页面。实体管道用于处理爬虫提取的实体,主要的功能是持久化实体、验证实体的有效性、清除不需要的信息[9-10]。

2 房价数据采集和预处理

2.1 房价数据采集

前期调研阶段,通过分析国内主流房产网站和热点大城市的网络搜索热度和权重,结合区域特点,选择58同城网的广州房价数据为数据来源[11],具体信息包括户型、面积、朝向、楼层、城区、小区名、总价、单价等[12]。

房价数据采集过程:查找房价具体内容、检验爬取内容、查询Headers信息、数据存储调用等。①房价具体信息的查找:进入网站,通过页面的Html源码查看特定信息标签,根据标签信息爬取特定的数据。数据爬取过程中需要理清标签之间的嵌套关系,从首页面到二级子页面,依次往下涉及的标签种类有整体框架标签、下级标签、具体内容的标签等。②利用XPath Helper插件获取爬取内容的标签层级,检验所采集的数据是否出现错误。③HTTP请求头Headers信息的查询:考虑到很多网站设置了反爬虫机制,在合法合规前提下通过在Headers信息中添加代理IP以达到反爬的目的。④利用Sqlalchemy引擎实现数据的存储和调用:数据库中为了防止字段乱码,要把表中的字段改成英文的形式,利用字典的形式更换成英文字段,然后把表插入数据库中。

2.2 房价数据清洗

房价数据清洗阶段主要操作包括:缺失值检测、数据去重、数据格式统一、过滤模糊数据等步骤。

由于爬取的信息没有缺失值,所以只进行了全面的检测,分别查看了含缺失值的列。数据去重阶段通过判断重复数据,并统计重复数据的数目,查看重复的数据。为了检验重复的数据是否准确,可以随机选择一个标题,用query()函数进行选择行操作,使用count()方法,判断去除重复项的数据表剩下的数据量,通过调用pandas库的drop_duplicates()函数执行对数据的去重操作。做重复数据的去除时可以重新使用一张数据表,再次进行去重操作。

数据格式统一:需要去重单位字段,再把去重后的数据存储在数据库中。表1显示的是去重后存放在数据库中的部分数据结果。

过滤模糊数据主要是通过调用query()函数选取非模糊的数据信息来实现模糊信息过滤。由于数据中房子的地址包括了广州周边的,对研究每个地区房子的价格没有太大的价值,需要去除这部分冗余信息。

3 房价数据分析和可视化

3.1 房价数据的分组和透视

房价数据分组是根据影响房价的要素对房价数据进行聚类分组,以便进一步分析各要素对房价的影响。不同的购房者对房子具体需求不同,在对房价数据分组时要对不同要素做具体分析,需要把数据重新组合成更直观的列表形式来表达。对广州各地区进行分组,查看每个地区可售房源的数量,分析得出,番禺出售的房子数量比较多,其次分别是天河、花都、黄埔、增城。再对各地区的数据取均值,最后对价格排序。

房价数据透视用到pandas库的pivot_table函数,以地区和朝向进行分组查看面积和价格,对每个地区房价最高的小区进行数据透视,并按房价进行降序,结果如表2所示。

3.2 房价数据的可视化及分析

房价的数据可视化是在房价数据分组或聚合之后的可视化,对广州每个地区的房价生成箱型图,分析各地区价格情况,如图2所示。分析得到:广州各地区房价的差距比较大,在2020年上半年中,因为疫情的原因,广州各地区经济受到不同程度的影响[13],只有天河、越秀和南沙GDP属于正增长状态,并且平均房价比较高的各地区同比增长率平均都在-1.0%左右。GDP最高的天河区房价最高,如果单纯只是想在广州买到房,不考虑其他因素,可以选择花都区、增城区、南沙区、从化区,这几个区的房价相对稳定,均价在1.5万到2.5万之间,其余区之间的价格差距明显比较大,差距几乎有1万多。

如果只关注价格信息,得到的信息比较片面,需要把朝向、价格、密集情况结合起来。以朝向为例,把注重房子朝向的信息综合作为参考,图3、图4显示其中朝南和朝东方向受到购房者关注度情况。

图中x轴为地区,y轴为价格,每个朝向为主题,分析得到:在广州相对关注比较多的朝向是南、南北、东南,而东西、西北受关注较少,其中东北朝向集中分布在天河、海珠、番禺,根据散点分布,番禺价位较低。如果从地区经济状况看,天河、海珠,这两个地区在高价位上的变动不大,但海珠地区散点密集高于天河,如果想要更多的朝向选择,可以考虑海珠地区。朝北的房子分布比较均衡,且经济比较发达的地区普遍价位较高,东朝向的房子分布较均匀,经济力量最强的天河区依然房价最高。

图5、图6分别将广州总体房价以曲线图和地图形式展现出来,可以直观判断出广州房价的状况,帮助购房者根据需求在现波动范围内合理决策。

4 结论

本文利用网络爬虫技术采集58同城网的广州房价数据,通过对数据进行爬取、存取、清洗和可视化,把影响房价的要素以一种合理的可视化的形式加以呈现。相比传统分析方法,大数据分析技术在数据采集、数据挖掘和可视化应用方面优势明显。

参考文献(References):

[1] 潘晓英,陈柳等.主题爬虫技术研究综述[J].计算机应用研究,2020.37(4):961-965

[2] 闫志国,宛楠等.基于Scrapy爬取电商药品数据及数据可视化分析处理[J].轻工科技,2021.37(3):98-100

[3] 曹睿娟,姜仁贵.基于大数据的城市内涝网络舆情监测及演化机理[J].西安理工大学学报,2020.36(2):151-158

[4] 于凤芹,于千惠.金融科技影响商业银行盈利能力的机制分析[J].金融与经济,2021.2:45-62

[5] 饶加旺,王勇,马荣华.文本大数据的智慧城市研究与分析[J].测绘科学,2020.45(7):174-184

[6] 夏秋月,路婕等.大数据背景下郑州市中原区二手房特征价格研究,2020.39(1):83-88

[7] Shemshadi A, Sheng Q Z, Qin Y. ThingSeek: a crawler

and search engine for the internet of things//Proceedings of the 39th International ACM SIGIR conference on Research and Development in Information Retrieval. New York,2016:1149-1152

[8] 曾健榮,张仰森,郑佳等.面向多数据源的网络爬虫实现技术及应用[J].计算机科学,2019.46(5):304-309

[9] 樊宇豪.基于Scrapy的分布式网络爬虫系统设计与实现[D].电子科技大学,2018.

[10] 李晓炀.Scrapy在气象综合业务实时监控系统中获取第三方数据的应用[J].无线互联科技,2019.16(21):3-4

[11] 王康,李含伟.自媒体时代的企业网络舆情应对策略研究——基于上市公司百度指数的研究[J].情报科学,2018.36(1):113-117

[12] 瞿诗进,胡守庚,李全峰,等.城市住宅地价影响因素的定量识别与时空异质性——以武汉市为例[J].地理科学进展,2018.37(10):71-80

[13] 陈忧子.2020年GDP:天河黄埔越秀总量居前,番禺反超白

云重回第四[N].广州日报,2021.3.24.

收稿日期:2021-04-06

基金项目:2020年度广东普通高校创新团队项目“人工智能技术与应用创新团队”(2020KCXTD045); 2020年度广东省高职院校高水平专业群建设项目“计算机应用技术专业群”(GSPZYQ2020076)

作者简介:石慧(1983-),女,湖北咸宁人,硕士研究生,讲师,主要研究方向:大数据技术、人工智能技术。

猜你喜欢

大数据分析可视化
自然资源可视化决策系统
思维可视化
基于Power BI的油田注水运行动态分析与可视化展示
自然资源可视化决策系统
基于CGAL和OpenGL的海底地形三维可视化
“融评”:党媒评论的可视化创新
大数据分析对提高教学管理质量的作用
基于大数据分析的电力通信设备检修影响业务自动分析平台研究与应用
面向大数据远程开放实验平台构建研究
面向大数据分析的信息管理实践教学体系构建