用python爬取二手房交易信息并分析第一步:编写爬虫

爬取某平台上海市十个区共900条二手房的交易信息#爬取上海十个区的二手房价信息

import requests

from bs4 import BeautifulSoup

import csv

#获取房价的文本信息

def gethousetext(url):

try:

r = requests.get(url)

r.raise_for_status()

r.encoding = r.apparent_encoding

return r.text

except:

return "error"

# 获得房子的价格、面积、详细信息等

def gethouseinfo(h_list, html, loc):

h_info = []

soup = BeautifulSoup(html, "html.parser")

house_info = soup.find_all('div', attrs={'class': "listX"})

# 将房屋信息储存在一个列表里

for h in house_info:

p = h.find_all('p')

h_info = [p[0].text, loc, p[2].text, p[3].text, p[4].text]

h_list.append(h_info)

def storehouseinfo(h_list, fpath):

# 打开csv文件,写入数据

with open(fpath, 'w', encoding='utf-8') as f:

house_csv = csv.writer(f, dialect='excel')

house_csv.writerow(["基础信息","区域","访问情况","总价","单价"])

for t in h_list:

house_csv.writerow(t)

def main():

place = ['pudongxinqu', 'minxingqu', 'xuhuiqu', 'putuoqu', 'baoshanqu', 'yangpuqu', 'hongkouqu', 'jiadingqu',

'huangpuqu', 'jinganqu']

place_name = ['浦东新区', '闵行区', '徐汇区', '普陀区', ' 宝山区', '杨浦区', '虹口区', '嘉定区', '黄浦区', '静安区']

path = 'C:/Users/晴蓝/Desktop/house_price.csv'

house_list = []

for x, y in zip(place, place_name):

sh_url = "https://sh.5i5j.com/ershoufang/" + x

for p in range(1, 4):

h_url = sh_url + "/n" + str(p)

html = gethousetext(h_url)

gethouseinfo(house_list, html, y)

storehouseinfo(house_list, path)

main()

爬取结果展示

第二步:提取有效信息

代码展示import pandas as pd

data = pd.read_csv('C:/Users/晴蓝/Desktop/house_info_list.csv', engine='python')

#data中每隔一行都有空值, 清除空值

data = data.dropna()

data['location'] = data['区域']

#从data的基础信息中提取出房间布局、房屋面积、装修情况

data['room'] = data['基础信息'].str.split('·').str[0]

data['house_area'] = data['基础信息'].str.split('·').str[1].str.split(' ').str[0]

#从访问情况获取关注人数和带看次数

data['attention'] = data['访问情况'].str.split('·').str[0].str.split(' ').str[0]

data['recent_visit_times'] = data['访问情况'].str.split('·').str[1]

data['recent_visit_times'] = data['recent_visit_times'].str.replace(' ','').str[6:-1]

#获取单价和总价

data['house_price'] = data['总价'].str[:-1]

data['per_square_price'] = data['单价'].str[2:-4]

#清除脏数据

del data['区域']

del data['基础信息']

del data['访问情况']

del data['总价']

del data['单价']

#将数据保存到新的文件下

data.to_csv('C:/Users/晴蓝/Desktop/house_cleaning_data.csv', encoding='utf-8')

结果展示:

第三步:进行可视化分析

#小户型市场前景好

房价随着距离市中心的距离不断变化。嘉定区因为距离较远,所以房价在十个区中最低,其他9个区的房屋每平方的均价都在50000以上。且处于上海外环外的地区的嘉定、宝山、闵行房屋均价比位于上海外环外的房屋均价都低。而浦东新区并不完全属于外环内,但房屋均价却比较高

图中可以看到浦东新区的房价极差是最高的,主要是浦东新区的区域面积比较大,一部分在外环内另一部分在外环外,房屋价格差异较大,在外环内的房价在一定程度上拉高了浦东新区的房价说水平

第一张图点数分布两边少中间多,带看次数在总体上先随着价格增多,在80000左右的时候总体的带看次数随着价格的增加而开始下降。图中的数据有点左偏,说明二手房的购买者经济能力并不是很足,偏向于单价在40000到60000之间的房子。

第二张图的点数分布主要集中在500万以下的区域,同前一张图的结论相同,二手房的购买者更倾向于价格更低的二手房

房屋的总价收到单价和房屋面积的影响,房屋的面积与房屋的户型有很大的关系,户型越多房屋的面积就越大。

这是各个区户型总数在20以上的带看次数

从爬取的户型总数来看,二手房小户型1室1厅1卫和2室1厅1卫所在比重大,接近三分之二的户型都是小户型,其中的原因主要是小户型购买的经济压力较小,且多数人是因为家里人口增多,收入变高,打算卖房买房。小户型带看次数平均值都在3.0以上,说明大家对二手房小户型的中意程度比较高。

结论:小户型二手房的购买者主要是经济能力不是很足但又是买房刚需的年轻小两口,小户型的价格相对来说比较低,且从上述不同户型的平均带看次数来看,小户型二手房的前景依旧不错。

#发现问题

网站内容的访问次数和关注度能够表现出该内容对访问者的影响力,同时可以看出访问者对该内容的注意程度,网站的所有者可以从中挖掘出大量的商业信息。

图中数据是某平台二手房每个房屋的关注度和实际带看次数。

两种数据的散点图没能发现明显的规律,假设两种数据不具有明显的线性关系。运用线性模型求得带看次数与关注次数的相关系数为0.0914,该值接近0,基本上两者没有相关性,假设正确。说明网站上房屋的关注度并没有进一步的转换为房屋的实际带看次数,网站对用户的行为的关注程度不够,没有在发现客户相关行为时对用户的行为进行研究和挖掘用户的潜在价值。

php爬取房源,用python爬取二手房交易信息并进行分析相关推荐

  1. python爬取房源数据_python爬取安居客二手房网站数据(实例讲解)

    是小打小闹 哈哈,现在开始正式进行爬虫书写首先,需要分析一下要爬取的网站的结构:作为一名河南的学生,那就看看郑州的二手房信息吧! 在上面这个页面中,我们可以看到一条条的房源信息,从中我们发现了什么,发 ...

  2. python爬百度翻译-爬虫 python爬取百度翻译接口 超详细附源码

    前言 今天教大家如何利用 firefox 分析百度翻译的接口,并用python爬取接口.大家学会后可以干一些有趣的事情,比如做一个自己的翻译软件. 具体内容 1 - 找到URL接口 进入百度翻译的网址 ...

  3. python爬取小说爬取_用python爬取笔趣阁小说

    原标题:用python爬取笔趣阁小说 首先打开笔趣阁网址,链接,搜索自己想要的小说. 在网站内单击右键,点击检查,会出现如下界面! 我们需要的章节信息就在我划的这块, 可以将每个标签点一下,它对应的内 ...

  4. 如何用python爬取网页数据,python爬取网页详细教程

    大家好,本文将围绕python怎么爬取网站所有网页展开说明,如何用python爬取网页数据是一个很多人都想弄明白的事情,想搞清楚python如何爬取网页数据需要先了解以下几个事情. 1.如何用Pyth ...

  5. python输入数据爬取_利用 Python 爬取高德地图数据

    准备1.高德开放平台注册账户 https://lbs.amap.com/dev/index 验证手机号码.邮箱后进入开发者后台创建一个应用: 并为该应用添加 Key,服务平台选择 web 服务 申请完 ...

  6. 如何用python爬取图片数据_“python爬取微博图片教程“用Python爬虫爬取的图片怎么知道图片有没有水印...

    怎样用python爬新浪微博大V所有数据 我是个微博重度,工作之余喜欢刷刷timeline看看有什么新鲜事发也因此认识了高质量的原创大V,有分享技术资料的,比如好东西传送门:有时不时给你一点人生经验的 ...

  7. python爬考研_用Python爬取了考研吧1000条帖子,原来他们都在讨论这些!

    写在前面 考研在即,想多了解考研er的想法,就是去找学长学姐或者去网上搜索,贴吧就是一个好地方.而借助强大的工具可以快速从网络鱼龙混杂的信息中得到有价值的信息.虽然网上有很多爬取百度贴吧的教程和例子, ...

  8. python爬虫爬取房源_python爬虫爬取安居客房源信息

    Xpath插件的安装 链接:https://pan.baidu.com/s/1T3V11Ev8dPODa2fCRbeuCg 提取码:qvzf 将这个安装包解压缩 打开谷歌浏览器的扩展程序 ----&g ...

  9. python 爬取图片_使用python爬取英雄联盟官方英雄皮肤图片

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取htt ...

最新文章

  1. 姚班学霸陈立杰:16岁保送清华,18岁拿下IOI世界冠军,现摘得FOCS 2019最佳学生论文...
  2. eclipse 设置workspace编码格式
  3. matlab中inf函数,matlab中voronoin()函数的用法,求高手指点
  4. sqlserver可视化工具_数据分析之基础分析工具篇(修订版)
  5. mysql.5.7 linux_mysql 5.7 linux下的安装
  6. 用OpenStack构建中国人寿数据中心生产云
  7. windows 11激活Office提示网络问题无法激活
  8. flea-cache使用之Memcached接入
  9. 大象跳转:解析微信内自动跳转浏览器打开URL网页的操作步骤
  10. URL缩短器:详细说明
  11. Python3-word文档操作(九):给word文档添加/删除一张图片-利用docx库
  12. 互斥锁、临界区和事件
  13. 做SEO需要学习什么?做好SEO必备的七大技能
  14. python决策树 value_机器学习之ID3算法详解及python代码实现
  15. MID:为3G而生,因3G引爆流行
  16. RouterOS 固定IP接入上网设置教程(超详细)
  17. 【未授权访问】我就这么容易被曝光了吗?
  18. 淘宝API接入说明(按关键词搜索数据示例)
  19. 《Delphi 版 everything、光速搜索代码》 关于获取文件全路径 GetFullFileName 函数的优化
  20. 页面载入进入后台,回来刷新,且只刷新一次,避免无限刷新

热门文章

  1. token - 令牌
  2. LVS负载均衡DR模式安装和配置过程详解
  3. 图解LVS的工作原理
  4. cfadisk,让电脑把sd卡识别成硬盘
  5. 通过“三秒法则”告别拖延,成为行动派
  6. 星特朗望远镜怎么样_星特朗天文望远镜怎么样|使用体验
  7. 数据逻辑结构 的 二元组表示法
  8. 【Python】胡渊鸣的99行代码——冰雪奇缘
  9. 好用的在线思维导图软件--GitMind
  10. 如何下载网页上的图片