在现在的日常生活中,网络成为了我们必不可少的一部分,网络能为我们提供了各种各样的服务,而住房问题是现代人最关心的问题,住房不像购物或者美食等不计成本的选择,住房对于绝大部分的人来说都是至关重要的的,它决定了人们工作、娱乐、医疗和教育等问题。在快速发展的社会和提供功能相似的竞争对手当中,为人们提供更简单、更直观、更便捷的服务是我们研究的方向。为了改变现有的服务商提供所有房价信息,经过我们多次筛选之后的选择更加简单快捷,这样的方式不仅调高了工作效率,而且还为客户减少了大量的时间。
从商家的角度来讲,商家可以通过本项目更加便捷准确地储存石家庄房产的诸多房源信息。
从用户的角度来说,不仅可以提高时效性,更可以保证信息的准确快速性。
房产是传统行业,与互联网、计算机技术方面的接轨较少,诸多房屋中介中,中高端的房地产公司对于管理信息的方面还有一定的重视,中小型的房屋中介就很容易忽视这方面的内容,导致会员选择房子时眼花缭乱,以及对信息准确性判断的不方便。在这样的基础上,我认为此项目不仅对于单个房屋中介有意义,而且对于促进我国房屋买卖也有重大意义。
设计的基本内容
本设计主要为了解决民生如何找到合适房源的问题,通过此项目进行石家庄地区的房产价格数据可视化并对其进行分析,可以为用户挖掘出隐藏在网络数据中的所有房源的分布情况以及价格等特征走向,帮助用户做出更好的决策体征数据,,探索石家庄房建筑面积、位置、户型等对石家庄房价的影响情况。此项目是以Django为框架,采用Python语言,对石家庄地区的房价数据进行采集,并通过MySQL数据库进行保存。
功能需求
石家庄市房产数据爬取及可视化分析系统是针对石家庄房产商品信息波动监控进行设计研发的,核心内容管理主要以自动采集监控石家庄房产信息为核心,重点解决关注石家庄房产商品信息的动态采集分析,为了尽可能使得系统通用处理,采用数据库中保存数据关键字信息、入库商品关键数据等信息,减少手工管理,为动态风貌石家庄房产数据提供直观明了规范的商品变化情况信息,减少采用文件数据处理的杂乱和差错,快速准确地掌握房产商品变化情况。
石家庄市房产数据爬取及可视化分析系统主要面向房地产行业用户,通过调查分析,系统主要的功能需求如下:
抓取网页:用于获取房地产网页上的商品数据以及在爬取过程中模拟进行翻页、滑滚轮、键盘输入等操作;根据搜索的小区名获得该类房产全部的详细信息和价格。
数据存储:将爬取后的房产商品详细信息保存到生成的文本文档和数据库。
数据整理:将获取的商品数据根据用户选择按照价格进行基本的排序便于进行可视化分析。
可视化分析:将得到的商品信息进行处理生成可视化图表。
核心代码如下:
defget_price_list(html):
'''
提取数据
'''
result = []
# 解析 html
html = etree.HTML(html)
# 提取这一页的满足条件的标签
infos = html.xpath('//a[@class="favor-pos"]')
# 循环每一个子标签,提取数据
for info in infos:
house_url = info.attrib['href']
id = house_url.split('/')[-1]
try:
price = info.xpath('./p/span/text()')[0]
except:
price = '0'
data = {
'id': id.replace('.html',''),
'price': price,
}
result.append(data)
print(data)
return result
defget_complete_info(main_data, price_data):
for rec in main_data:
id = rec.get('id')
prices = [o for o in price_data if o.get('id') == id]
if prices:
rec['price'] = prices[0].get('price')
returnmain_data
拟采用的技术方案及措施
开发环境:
使用Windows10操作系统,Python版本为3.8,使用框架Django,使用MySQL5.7版数据库存储数据。
主要技术:
前端使用HTML+CSS+JavaScript+Django 进行开发。本系统设计时用到的主要工具有PyCharm2020编写Python、Navicat Premium 15连接数据库MySQL。