链家网杭州租房信息数据爬取+数据分析

本文通过Python爬取链家网杭州租房数据,进行数据分析,揭示杭州主要区域房源数量、均价、价格区间与房源数量的关系、房屋面积分布及价格之间的联系。数据显示,杭州租房市场房租差异大,约80%房源面积在0-90平方米,大部分房租在4000元/月以下。
摘要由CSDN通过智能技术生成

参考https://mp.weixin.qq.com/s/vvZ2yBb2eMKP800LUPoAWg

需求分析


  • 过去一个月,全国热点城市的房租如脱缰野马。一线的房租同比涨了近20%。一夜醒来,无产青年连一块立锥之地都悬了。
    从2018下半年开始,租金海啸汹汹来袭,资本狂欢,官方默然,房东纠结,租客尖叫。这不是一方的过错,而更像是一场
    全社会的“集体谋杀作品”。最令人不安的是,过去房地产的那套玩法和上涨逻辑,今天正在转移到房租上。
  • 通过python获取某网站杭州的租房数据,来进行数据分析


页面分析


要爬取得字段

  • 1.标题 title
    title=html.xpath(‘.//li/div[@class=”info-panel”]/h2/a/@title’)[i].replace(“,”,” “)
  • 2.户型 room_type
    room_type=html.xpath(‘//div[@class=”list-wrap”]//li//div[@class=”where”]/span[@class=”zone”]/span/text()’)[i].replace(“\xa0\xa0”,”“)
  • 3.面积 meters
    m=html.xpath(‘//div[@class=”list-wrap”]//li//div[@class=”where”]/span[@class=”meters”]/text()’)[i].replace(“\xa0\xa0”,”“)
  • 4.建筑时间 time
    time=html.xpath(‘//div[@class=”list-wrap”]//li//div[@class=”con”]/text()[2]’)[i]
  • 5.所在楼层 floor
    floor=html.xpath(‘//div[@class=”list-wrap”]//li//div[@class=”con”]/text()[1]’)[i]
  • 6.价格 price
    price=html.xpath(‘//div[@class=”list-wrap”]//li//div[@class=”col-3”]/div[@class=”price”]/span/text()’)[i]
  • 7.楼层总高 tatal_floor
    tatal_floor=re.findall(‘(\d+)’,floor)[0]
  • 8.更新时间 price_pre
    price_pre=html.xpath(‘//div[@class=”price-pre”]/text()’)[i][:-2]
  • 9.具体位置 detail_place
    detail_place=re.findall(“(\w+)租房”,html.xpath(‘//div[@class=”con”]/a/text()’)[i])[0]


数据分析


数据获取


In [2]:
import requests
import re
from  lxml import etree


In [3]:
def get_html(url):
    headers={
        
        "user-agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.84 Safari/537.36"
    }
    r=requests.get(url,headers=headers)
    html=etree.HTML(r.text)
    for i in range(30):
        title=html.xpath('.//li/div[@class="info-panel"]/h2/a/@title')[i].replace(","," ")
        room_type=html.xpath('//div[@class="list-wrap"]//li//div[@class="where"]/span[@class="zone"]/span/text()')[i].replace("\xa0\xa0","")
        try:
            m=html.xpath('//div[@class="list-wrap"]//li//div[@class="where"]/span[@class="meters"]/text()')[i].replace("\xa0\xa0","")
            meters=re.findall('(\d+)',m)[0]
            meters=float(meters)

        except:
            meters=''
        meters=str(meters)
        time=html.xpath('//div[@class="list-wrap"]//li//div[@class="con"]/text()[2]')[i]
        floor=html.xpath('//div[@class="list-wrap"]//li//div[@class="con"]/text()[1]')[i]
        try:
            price=html.xpath('//div[@class="list-wrap"]//li//div[@class="col-3"]/div[@class="price"]/span/text()')[i]
        except:
            price=""
        tatal_floor=re.findall('(\d+)',floor)[0]
        floor = floor[:1]
        try:
            time=re.findall('(\d+)',time)[0]
        except:
            time=''
        price_pre=html.xpath('//div[&#
### 安居客出租房(武汉为例)爬虫+数据分析+可视化 这个爬虫是我前段时间在淘宝上做单子的时候遇见的一个客户需求。本来以为就是一个简单的爬虫项目。但后面客户加了数据清洗和数据分析的要求。而后又加了要详细代码解释的需求等等。直到最后客户坦白说这是他们大专的毕设.......但是这个单子坐下来只有200左右,我想了一下,感觉好亏啊。在淘宝上随便找一个做毕设的都要好多钱的,而且客户本身的代码能力、数学、逻辑能力都很差,导致我每行都给注释以及看不懂,在我交付代码后又纠缠了我一个多礼拜。反正总体做下来的感觉就是烦躁。头一次感觉到了客户需求变更带来的巨大麻烦。 总之这是一次不是很愉快的爬虫经历。但是作为我写爬虫以来注释最详细的一次,以及第一次真正使用像matplotlib这种数据分析库的代码,我认为还是有必要分享出来给大家当个参考的(PS:大佬轻拍~)。爬虫本身几乎没有什么难度,写的也比较乱,敬请见谅。 **功能** 爬取安居客上的出租房信息(武汉地区的),并通过爬取数据进行数据清洗以及数据分析。给出四个不同层面的可视化图。最终结果如下图所示: ![Image text](https://raw.githubusercontent.com/srx-2000/git_spider/master/anjuke_room_rent_info/result/1.png) ![Image text](https://raw.githubusercontent.com/srx-2000/git_spider/master/anjuke_room_rent_info/result/2.png) ![Image text](https://raw.githubusercontent.com/srx-2000/git_spider/master/anjuke_room_rent_info/result/3.png) ![Image text](https://raw.githubusercontent.com/srx-2000/git_spider/master/anjuke_room_rent_info/result/4.png) **环境** 1. Windows 10 2. python3.7 **使用方法** 首先声明该爬虫由于是特定情况下写的,所以本身的通用性特别差,仅可以对安居客站上的武汉的出租房信息进行爬取,且需要自己手动更新cookie。同时在对数据进行分析及可视化的时候由于也是特别针对武汉出租房的进行的,所以针对性也比较强。如果别的需求需要自己进行更改。 1. 访问[安居客址](https://wuhan.anjuke.com/),获取cookie。 > tip:获取cookie的方法可根据[此链接](https://jingyan.baidu.com/article/5d368d1ea6c6e33f60c057ef.html) 2. 在项目中找到`spider.py`的文件,将第12行的cookie换成你自己的cookie。 3. 运行`spider.py`,获取房源信息。运行后应会产生一个`武汉出租房源情况.csv`的文件。此文件为我们从安居客上爬取的房源信息,其中包含`房屋租住链接、房屋描述、房屋地址、房屋详情(户型)以及经纪人、房屋价格`五个属性。 4. 在获取了数据之后我们运行`matplotlib.py`文件。进行数据清洗,分析,可视化。运行后即可获得**功能**中展示四个图片。 **技术栈** 1. request 2. parsel 3. pandas 4. matplotlib **进步(相比之前)** 此次爬虫相比之前的技术上可以说有减无增。但其中注释相当详细,可谓是每行代码都有注释。所以对于初学者应该有一些用处。同时使用matplotlib进行了数据分析可视化等。对于数据处理的代码的注释也是几乎每行都有注释的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值