数据导出时去掉标签_利用链家数据进行城市房价分析

一、数据爬取

1.域名分析

链家网址为5个部分:分别为城市首字母、链家域名、项目名拼音(如租房、二手房)、关键词,(如区、板块、楼盘名等搜索关键词),筛选条件(如总价、发布时间、面积、户型页等筛选条件,由于后期可用切片器解决,故不做设置)、码栏目。

dda34f7b70e6cdc84150f760ec3edc32.png

爬取时,锁定城市,调整关键词,翻页即可。

2.页面分析

每套房源,需要保留信息如下:

标签:作为主键使用;

定位:定位分为两部分,地址与板块;

长信息:长信息中,可获取信息为户型、面积、朝向、装修、建造年代;

总价:总价信息,可计算出单价信息。

0fd7c5e542635c3c7e8a9c06e1d3a357.png

搜索后页面,一页为30个房源,翻页上限为100页,即每个关键词能显示3000个房源信息。意味着如果单个关键词范围过大,将会严重压缩数据量。若一个城市房源数上10万,同时板块数有数十个,那么抽取3000套房源,数据量不足会就会导致偏差。房源总数较大时,可分割为区、乃至板块,保证数据完整。
3.页面代码分析       每套房源均在li标签下:

li标签下分别为其他信息:

        title标签下为房源标签信息;
              priceInfo标签下为总价信息;
              flood标签下为地址与板块信息;
              address标签下为关键词信息,关键词中包含户型、面积、装修等;                            followInfo下为关注信息,包含关注人数与发布时间。

334ee124367171da02bec841b21c95d3.png4.编写代码及优化

调用包

880ae8408cc7f1a855534163e35869d3.png

解析网页

4ff39b962c5d7342ae61e07e9e5ef54b.png

提取关键字

14d2dd7eb0c51494886b2ba842e427bd.png

提取后发现,在flood地址与板块之间有“-”符号,address关键词标签下有“|”分割符号,followinfo标签下有“/”符号。

b0804d7afed6e578456218ada5d071e9.png

为保证一次性输出内容正确,代码修改为以下:

7ebb6ca3971b4112ef9476e38bddb81b.png

最后建立文件夹保存,为节约内存,建立文件夹放在for循环之前,完整代码为:

166640f0d26b3393f7dd95c914bfe0cc.png

        运行后得到数据:

    PS:由于只是测试,爬取2个板块数据,后期根据需求,可嵌套for循环,一次性爬取多个板块数据。

二、数据清洗

    导出数据主要有以下问题:

    面积、关注后有单位,无法计数;

    户型部分填写不统一,出现4室1厅,4室2厅,4室3厅等干扰项目;

    地址多为楼盘名,全国有多个重复地址;

    部分数据由于分隔符错误,缺失等问题,导致错行。

    由于代码不熟悉,爬取阶段未能避免问题,采用excel中最为粗暴方式解决:

    直接查找批量替换去除单位;

    地址增加城市名前缀,便于识别坐标;

    户型仅取前两位,便于统计

    定位空格删除行,消灭脏数据。

3f0a0575f2f10e48492bc5fcc406d3f3.png

代码优化,清洗前数据示例:

f7a168dbec0830f8e8ef335d342016aa.png

    清洗后数据,PS:增加经纬度为了制作热力地图。经纬度由在线软件爬取,3000余个耗时5小时……为减少时间,降低被封ID风险,建议地址去重后爬取,然后用VLOOKUP公式匹配,

三、数据分析

    采用POWERBI导入数据,整体版面如下

5d0380b6c2c41fe4d42fd9873be1204b.png 

    设置筛选器,整体剔除单价小于6000,总价小于30万房源,避免租房信息及车位信息影响数据。

9e5f2c15b135c5ad2c42bd9e2220b822.png

    切片大于等于1人关注去掉僵尸房源,建成时间07年后单位。数据共约2000组,大约比例为2:1。

ee409675d3a4110e860e95c24298c24e.png

        总价与单价采用箱形图分析,首先理解箱形图概念。

1a274a3160820be70d5d5f71eb49d94b.png

    由于最大值最小值也有意义,故区全域数据。对比发现北滨路整体高于鸿恩寺,同时两者中位数小于平均值,整体数据往高总价聚集。对应一分位数与三分位数,对了解区域价格分布也有指导性意义。

dd372bbc9a7d61ad0c119833517f0ce8.png

    单价分布同理

9208aafa4cd514291e0dd591ddb68888.png

  地图若直接导入地址,除省市外,将会有巨大偏差。本图采用爬取经纬度的方式定位,由于经纬度为百度坐标系,与微软合作地图有一定偏差,同时坐标采用加密形式,计算有较大困难,后续需要寻找解决方案。

5913b7dfc3ef2df4f1e5e0f73e32ea8a.png

    切片北滨路后,以北滨路:鸿恩寺总数2:1来看。发现北滨路毛坯房占比偏低;简装比例偏高;2房与1房占比更高。说明北滨路产品更多元化,刚需客户或者投资客户更多。如果切片修建时间,会发现其他更多规律。

5244f6c6af5bf4a01153b491e3299232.png

   总价单价散点图,配合户型切片观察。发现北滨路更偏于高总价单价房源。同时由于斜率表示面积,切片后发现,除一房外,同样户型北滨路户型会明显比鸿恩寺偏大。同时面积段更为宽广。

e695cb80398fb892cdb31ca70d07b9ce.png

报表页(复制在浏览器中打开即可)

https://app.powerbi.com/view?r=eyJrIjoiZGIxZDE0OWMtOTA2Yi00OTkyLWI1ODItNzVjMmZhZjM0NThhIiwidCI6ImNkNWRmNDkxLTZhMTYtNDkzZS1iNTVhLTkzOGYzYWE5YWRlYiIsImMiOjEwfQ%3D%3D

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值