数据分析上海长租房市场

数据分析上海长租房市场

  • Python数据爬虫
  • R语言数据处理
  • 上海租房市场分析

目录

[TOC]来生成目录:

前言

租房市场成为国内的一个热点
不久前,CSDN微信公众号推送了一篇关于北京租房的文章,通过数据分析了链家网中北京租房的情况。本工程汪觉得这个话题非常有意思,加上本就刚刚来到上海,对魔都租房的体验有一番自身的理解,所以想通过数据分析还有个人经历与大家分享交流。
[附:北京房租大涨?6个维度,数万条数据帮你揭穿 作者:丁彦军]

链家数据获取(Python)

数据爬虫的方法上述文章已经详细介绍,代码附在下面,在此仅简略描述

Python的几package可以快速的扫描网页,并提取关键信息数据,这段script运行过程如下:
这里写图片描述
1. 选定根url进行搜索 (https://sh.lianjia.com/zufang
2. 选择区域(浦东、闵行等)
3. 选定搜索页面(1,2,3…)
4. 提取关键信息(房租、面积、朝向等)

此代码有一处error,搜索最后一个区的时候会发生connection error,必须手动终止程序,sorry~

# -*- coding: utf-8 -*-
"""
Created on Sun Aug 26 17:37:24 2018

@author: sxl740
"""

import requests
import time
import re
from lxml import etree

# 获取某市区域的所有链接
def get_areas(url):
    print('start grabing areas')
    headers = {
        'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36'}
    resposne = requests.get(url, headers=headers)
    content = etree.HTML(resposne.text)
    areas = content.xpath("//dd[@data-index = '0']//div[@class='option-list']/a/text()")
    areas_link = content.xpath("//dd[@data-index = '0']//div[@class='option-list']/a/@href")
    for i in range(1,len(areas)):
        area = areas[i]
        area_link = areas_link[i]
        link = 'https://sh.lianjia.com' + area_link
        print("开始抓取页面")
        get_pages(area, link)

#通过获取某一区域的页数,来拼接某一页的链接
def get_pages(area,area_link):
    headers = {
        'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36'}
    resposne = requests.get(area_link, headers=headers)
    pages =  int(re.findall("page-data=\'{\"totalPage\":(\d+),\"curPage\"", resposne.text)[0])
    print("这个区域有" + str(pages) + "页")
    for pa
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值