为了买房,我抓取了某家房源的成交数据(分析篇)

一、缘起

最近贷款利率不断的下降,以及到了结婚的年纪,打算买套房来当做婚房,不然结婚后还得租房住,不断搬家实在扛不住啊。

下定决心后(毕竟要背负大几百万的贷款,所以给自己做了很多心理建设,哈哈),于是加入了看房的大队伍中。随着看房累积的经验不断的增加,越发感觉中介这行水很深,真是为了成交什么手段都能用出来的。当然也有非常专业的中介,给了很多客观的意见,但还是少数

考虑到没办法一直关注房源的变化,而且北京的房源是不显示成交价的,作为一名资深头秃程序猿,那必然是想着有没有什么神奇的操作可以解决这两个问题,所以要实现的目标呼之欲出

  1. 房源变动每日报表
  2. 抓到房源成交价

经过缜密的分析(玩游戏等待加载的时候看了看),发现可以实现,于是快速的付出了行动(打完N局游戏之后)

本系列共分为两篇文章《为了买房,我抓取了某家房源的数据-分析篇》,《为了买房,我抓取了某家房源的数据-实战篇》,本篇为原理分析篇,关注后食用更佳~

二、效果展示

为了证明本刁的强大,那必然先上效果,大家且看下图

房源数据效果展示图.png

由于本刁是后端码农,实在不善于美化界面,大家将就着看

数据主要分为两大块,有每日变动的数据以及全部的数据

黄色的标题代表的是今日变动的数据,有成交的房源,停售的房源,如果有新上架的房源也会展示在内

全部数据指的是从抓取到至今所有的房源数据详情

而且如果房源是已成交的话,会展示房源的【签约日期】、【签约价格】以及【成交周期】

三、分析

3.1 某家业务的承载方式

看了效果图,下面着手分析下这个需求,该如何实现

首先需要了解的是某家业务的承载形式以及数据获取的难易程度,主要有:

  1. 某家APP。手机APP可做的功能很多,一般都会有防抓包以及数据加密的功能,数据获取难度高
  2. 某家网站。在浏览器上即可访问以及抓包,数据获取较为容易
  3. 某家小程序。在微信上访问的,需要工具来抓包,数据获取难度一般

image.png

根据数据获取的难易程度,在浏览器上可直接打开的某家网站无疑是首选。

于是对某家网站进行抽丝剥茧的分析,这个过程非常重要,需要戒骄戒躁

戒骄戒躁表情包.webp

3.2 数据获取流程分析

首当其中的是,如何获取心仪小区的全部房源信息?

链家提供了对指定小区的房源进行搜索的功能,如下图所示,可以拿到小区的总信息和房源信息,若一页放不下的话还需要翻页,具体如下图

链家房源搜索.png

房源翻页.png

有了上面这份数据,新上架的房源信息就可以拿到了,公式为:今天新上架的房源 = 今天的所有房源 - 昨天所有的房源,这公式的复杂程度让我连连称自己为小天才

小机灵鬼.jpg

对于下架/停售的房源和成交的房源,链家做了一定的限制,需要关注该房源后等到【下架/停售】或【成交】的时候才会在关注列表中改变房源的状态信息,如下:

在关注列表中停售的房源图

在关注列表中停售的房源.png

在关注列表中成交的房源图 在关注列表中成交的房源.png

那么理论上,我们只要关注这个小区的所有房源,然后不断的遍历其状态就可以拿到下架和停售的房源信息喽

说起简单,做起来也简单,这涉及到两个点:

  1. 登录
  2. 关注房源

大部分网站登录态的保存都是借用的cookie的功能,我们在访问接口的时候直接把所有的cookie扔进去即可,这些技术细节我会在实现篇详细介绍,这里暂时不需要关注

对于关注房源,关注一下,抓个包就OK了,看起来也挺简单,这些细节就让我们相约实战篇吧~

四、总结

本篇文章主要对链家的网站进行了分析,找到合适的数据信息,下面实战篇将会介绍如何抓包、解析出自己需要的数据以及邮件通知

本系列文章仅供学习使用,不得用于违法犯罪行为

猜你喜欢

转载自juejin.im/post/7189891030626336805