SCI论文(www.lunwensci.com):
摘 要:利用 Python 网络爬虫技术对各大城市的二手房信息进行爬虫分析,通过数据可视化技术, 直观地展示二手房价和房源数量的城市分布及市场热点,分析二手房源的面积、价格、户型情况等二手房市场现状,为政府干预房地产业提供参考,也为购房者提供帮助。
关键词:Python; 网络爬虫;二手房信息;数据可视化
Visualization Analysis of Second-hand Housing Information Data Based on Python Crawler
【Abstract】: Using Python web crawler technology to crawler analysis of second-hand housing information in major cities. Through data visualization technology, the city distribution of second-hand housing prices and the number of housing resources and market hot spots are visually displayed. And analyze the current situation of the second-hand housing market such as the area, price, and house type of the second-hand housing source, so as to provide reference for the government's intervention in the real estate industry and help for the buyers.
【Key words】: Python;Web Crawler;second-hand housing information;data visualization
0 引言
目前,房地产交易的重心已逐渐转移到二手房,二手房具有价格普遍偏低、地理位置较好的优势。然而, 随着城市化进程加快,二手房交易市场鱼龙混杂,如何找到合适的房源信息已成为难题 [1]。随着互联网技术的 发展,人们开始通过交易网站来了解二手房信息,网络 上存在大量的房源,使用 Python 爬虫技术从中爬取有用的数据,再进行统计和可视化分析,可以把冗杂的信息变得精简。本文旨在使用这种技术,分析各大城市的二手房源数量和平均房价,从户型、面积等多个角度分析二手房市场现状,以方便购房者决策,也为政府干预房地产业提供参考。
1 网络爬虫
网络爬虫(Web Crawler)也称为“蜘蛛”,是一种在网络上自动地抓取数据的程序或脚本。网络爬虫的主要作用是在海量的网络信息中按一定规则进行爬取和 存储信息 [2]。网络爬虫模拟浏览器上网,指定初始一个或多个 URL,抓取初始 URL 页面上的数据并解析,获 取当前页面中的一系列 URL 地址,把新获取的地址加 入 URL 队列中,接下来不断地解析并存储队列中的网页数据,直到满足一定终止条件。爬虫的基本过程可以概括为以下四步 [3]:
(1) 发出请求,程序向目标网站服务器发出请求, 请求中通常包含 Headers 等信息,等待服务器响应;
(2) 服务器响应,得到响应,其中有爬取的页面内容;
(3) 解析数据, 响应中的内容可能有多种形式, 使 用正则表达式、解析库等方法进行解析,提取有效信息;
(4) 保存数据,将数据保存到文件或数据库中。
2 二手房房源数据爬取
2.1 爬取对象
研究对象是二手房交易网站上的房源信息,对比各二手房交易网站发现,链家网规模较大、房源信息较多,能够及时更新房源并保证信息真实可靠。选择链 家网的二手房信息进行爬取,主要获取房源标题、房 型、面积、总价、单价等数据,以分析二手房交易市场现状。
2.2 爬取流程
2.2.1 分析 URL
链家网上包含全国各大城市的二手房信息,以北京 二手房为例, 网址为 https://bj.lianjia.com/ershoufang/ pg1/, 分析 URL 发现,URL 中 "bj" 表示城市北京,"pg1" 表示页码第一页,通过改变城市和页码,就可以得到不同城市的房源信息。
2.2.2 爬取数据
通过调用 Requests 库实现自动爬取 HTML 页面, 模拟人类点击页面的操作自动提交请求。Requests 库 是 Python 中常用的一个 HTTP 库,高度封装了爬虫模块,方便用户爬取网页数据。首先通过 requests.get() 函数向服务器发出请求,服务器把网页内容封装成一个 Response 对象返回; 再用 etree.HTML() 函数将字符 串格式的 HTML 文档转换为 Element 对象,方便后续解析。关键代码如下:
url='https://bj.lianjia.com/ershoufang/pg'+str(i)
response=requests.get(url)
data=etree.HTML(response.text)
2.2.3 Xpath 解析数据
Xpath 通过路径表达式来寻找文档中的节点,提取其中的内容。例如,房源标题信在标签 <div class= "title"> <a> 中, 通 过 xpath('.//div[@class="title"]/a/text()')[0] 就可以提取到房源标题。解析代码,提取到房源的标题、标签、总价、房价等数据; 利用 split() 函数根据 “|”切割房源标签, 得到其中包含的户型、面积等信息。关键代码如下:
title=div.xpath(' .//div[@class="title"]/a/text()') [0]# 标题
info=div.xpath(' .//div[@class="address"]/div/ text()')[0]# 标签
price=div.xpath(' .//div[@class="priceInfo"]/ div[1]/span/text()')[0]# 总价
unitprice=div.xpath('.//div[@class="priceInfo"]/div[2]/span/text()')[0]# 单价
infoSplit=info.split('|')
type=infoSplit[0]# 户型
area=infoSplit[1]# 面积
2.2.4 保存数据
解析数据后,将每个二手房源信息的数据以字典的形式进行封装, 再用 csv.writer.writerow() 函数将封装好的数据写入到 CSV 文件中。CSV 文件数据交换方便, 还可以使用 Excle 方式查看。
3 二手房市场分析及数据可视化
数据可视化是将数据以图形的形式展示出来,使数 据直观易分析。Matplotlib 库是 Python 中应用最广泛 的可视化库,可以快速地绘制条形图、饼状图、散点图 等图形,直观地呈现数据,方便人们理解数据,更好地帮助人们决策 [4]。
3.1 数据预处理
通过网络爬虫得到二手房源数据,对其进行数据预处理,删除异常值,并整合数据,以便进行数据可视化。具体如下:
(1)删除缺失户型、房屋面积等关键数据的房源信息,保留缺失房屋建造年份、楼房结构等非关键数据的房源信息。
(2) 删除房屋面积、总价、房价数据中的单位信息, 只保留数字,以方便进行数据分析与绘制图表。例如, “164.36 平米”改为“164.36”。
3.2 数据可视化
3.2.1 二手房市场城市分析
随着房地产行业的发展,全国各地的房价存在较大 差异,因此不同城市的二手房源数量也会有所不同。选取了全国 20 个城市,统计二手房信息并绘制图表如图 1 所示。据二手房房源数量的统计结果可以看出,房价之间存在不同差异,房价较高的城市房源数量相对较少, 房价较低的城市房源数量相对较多。
3.2.2 二手房源热点分析
二手房交易网站的房源信息很多,为了吸引购房者浏览,房源标题会包含特定词语介绍并突出优势。为了分析 二手房源的热点, 将房源标题数据转为文本,利用 Jieba 库对文本内容分词,统计词频,再利用 WordCloud 库 绘制词云图,如图 2 所示。词频最高的是“精装修”, 说明购房者更喜欢装修好的房子,方便直接入住;“户型方正”“中间楼层”“南北通透”“采光好”的词频也 较高,说明户型、楼层高度、采光状态受到购房者的关 注,这些因素均与住户的居住体验密切相关,表明购房者买二手房的目的是自住,而非投资。
3.2.3 二手房源数据分析
为了直观地分析二手房市场现状,以杭州市为例, 对杭州二手房源的总价和面积进行关联分析,形成了总 价 - 面积散点图,如图 3 所示。150m2 以内的小户型房源,其总价和面积的相关性较强,其在二手房市场的占 比较高,是购房者的首选目标,而且购房者对价格较为 敏感。150m2 以上的大户型房源,随着面积的增加,与 总价的相关性逐渐变弱。购房者购买大户型的主要目的是改善生活质量,会更注重房源的内装质量、周边配套及交通便利等因素,对房价的敏感性较低。
4 结论
本文基于 Python 编程语言,爬取了网络上的二手房源数据并进行了分析,通过可视化图形直观地展示了 二手房价和房源数量的城市分布及市场热点,为未来购房者提供了便利。
参考文献
[1] 雷子尧 .房地产业对中国宏观经济影响分析[J]. 中小企业管 理与科技,2022(20):122-124.
[2] 潘晓英,陈柳,余慧敏,等 .主题爬虫技术研究综述[J].计算机 应用研究,2020,37(4):961-965+972.
[3] 蔡文乐,周晴晴,刘玉婷,等.基于Python爬虫的豆瓣电影影评 数据可视化分析[J].现代信息科技,2021,5(18):86-89+93.
[4] 钱贝贝,陈志波.基于Python爬虫的音乐数据可视化分析[J]. 电脑知识与技术,2022,18(8):6-8.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!
文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jisuanjilunwen/63352.html