爬取兰州市房价,看到结果让我很舒适

《兰州市落实强省会战略进一步优化营运环境若干措施》于2022年4月1日会议通过,兰州印发1号通知进一步放宽购房政策,包括降低个人购买住房门槛、减轻个人住房消费负担、加大住房公积金支持等政策 。
本文基于此借助Python工具爬取甘肃省和兰州市的房价数据,根据爬取的数据做分析,以及可视化 , 分析目前本地的房价水平,对于数据分析的结果可以作为下一步购房的参考标准 。

示例工具:anconda3.7
本文讲解内容:房价数据可视化分析
适用范围:pandas数据爬取、pyecharts可视化

爬取兰州市房价,看到结果让我很舒适

甘肃省房价分析

首先获取甘肃省的房价数据,打开汇聚数据网站,网址链接如下,该网站包含详细的甘肃省各城市的房价数据 。
https://fangjia.gotohui.com/fjdata-30

爬取兰州市房价,看到结果让我很舒适

使用read_html函数将网页数据爬取下来 , 编码方式设置为'utf-8',header=0将第一行作为列索引 , 由于read_html解析出来的数据是列表形式,[0]用于切片第一部分数据 。
import pandas as pddf = pd.read_html("https://fangjia.gotohui.com/fjdata-30", encoding='utf-8',header=0)[0]df['城市']=df['城市'] "市"df
爬取兰州市房价,看到结果让我很舒适

爬取下来的数据如上所示,一共爬取14行6列数据 。
df.shape
(14, 6)
导入Geo库做一个热力图,代码较简单,导入城市和房价数据即可,注意我们从网页爬取下来的数据城市名称是不带"市"的,但是使用pyecharts做热力图需要加"市",手动添加df['城市'] "市" 。
#热力图from pyecharts import options as optsfrom pyecharts.charts import Geofrom pyecharts.globals import ChartTypegansu_city=df['城市'].tolist()values=df['二手房(元/㎡)'].tolist()c = (Geo().add_schema(maptype="甘肃").add("二手房价格",[list(z) for z in zip(gansu_city, values)],type_=ChartType.HEATMAP).set_series_opts(label_opts=opts.LabelOpts(is_show=True)).set_global_opts(visualmap_opts=opts.VisualMapOpts(is_show=True,type_="color",min_=0,max_=13000),title_opts=opts.TitleOpts(title="甘肃省各市二手房数据热力图",subtitle='单位:二手房(元/㎡)')))c.render_notebook()
由热力图可以看出甘肃省的二手房价格偏高主要集中在兰州市周围,从整体分布来看呈东南方的房价数据高于西北方,也很好理解,西北方地广人?。?市场需求不大 。
爬取兰州市房价,看到结果让我很舒适

同样的导入城市和房价数据,使用Map做填充地图 , 同样在做填充地图时注意城市名称需要带"市" 。
#填充地图from pyecharts import options as optsfrom pyecharts.charts import Mapgansu_city=df['城市'].tolist()values=df['二手房(元/㎡)'].tolist()c = (Map().add("二手房价格", [list(z) for z in zip(gansu_city, values)], "甘肃").set_global_opts(title_opts=opts.TitleOpts(title="甘肃省各市二手房数据填充地图",subtitle='单位:二手房(元/㎡)'),visualmap_opts=opts.VisualMapOpts(is_show=True,type_="color",min_=0,max_=13000)))c.render_notebook()
爬取兰州市房价,看到结果让我很舒适

由填充地图可以看出兰州市的房价最高 , 这也很好理解 , 兰州作为省会城市房价是最高的,其次也带动周边城市的房价水平,具体的兰州市内的房价水平是怎样的?我们继续分析 。

兰州市房价分析

同理还是在聚汇数据这个网站,找到兰州市各区的房价数据 。
https://fangjia.gotohui.com/fjdata-321

爬取兰州市房价,看到结果让我很舒适

使用read_html函数爬取网页数据,发现返回的是一个列表数据 。
import pandas as pddf = pd.read_html("https://fangjia.gotohui.com/fjdata-321", encoding='utf-8')df
爬取兰州市房价,看到结果让我很舒适

我们从返回的列表数据中切片,[2]表示切出第三部分数据,同时header=0将第一行数据作为列索引 。
import pandas as pddf = pd.read_html("https://fangjia.gotohui.com/fjdata-321", encoding='utf-8',header=0)[2]df
爬取兰州市房价,看到结果让我很舒适

使用pyecharts库导入Bar包做一个条形图 , 同时设置markline_opts参数,做一个房价的平均值辅助线 。
from pyecharts import options as optsfrom pyecharts.charts import Bardf.sort_values(by=['单价(元/㎡)'], ascending=True,inplace=True)c = (Bar().add_xaxis(df['区域'].tolist()).add_yaxis("房价", df['单价(元/㎡)'].tolist()).reversal_axis().set_series_opts(label_opts=opts.LabelOpts(position="right")).set_global_opts(title_opts=opts.TitleOpts(title="兰州市各区房价数据情况"))# 设置系列配置.set_series_opts(markline_opts=opts.MarkLineOpts(data=https://www.itzhengshu.com/excel/[opts.MarkLineItem(type_="average", name="平均值")]),))c.render_notebook()


爬取兰州市房价,看到结果让我很舒适

由图像可以看出,兰州市内城关区的房价数据最高13644元/平米,而红古区的房价最低5364元/平米,均价在9670.33元/平米 , 不同地段的房价数据差异较大,价格以市中心地段较高,郊区较低 。
PS:以上房价数据均采集于聚汇数据 , 这里仅根据现有数据进行分析,不同房产数据可能有些许不同,这里仅作为本文分析论点 , 综合兰州市1号通知放宽购房政策,可以看出兰州市也在积极地促进市场发展,降低购房的启动资金,势必恢复居民购买需求 。
【爬取兰州市房价,看到结果让我很舒适】三年互联网数据分析经验,擅长Excel、SQL、Python、PowerBI数据处理工具,数据可视化、商业数据分析技能 , 统计学、机器学习知识,持续创作数据分析内容,点赞关注 , 不迷路 。

相关经验推荐