北京房租大漲?Python 6個維度,數萬條數據幫你揭秘
昨天還幻想海邊別墅的年輕人,今天可能開始對房租絕望了。
8月初,有網友在「水木論壇」發帖控訴長租公寓加價搶房引起關注。據說,一名業主打算出租自己位於天通苑的三居室,預期租金7500元/月,結果被二方中介互相抬價,硬生生抬到了10800。
過去一個月,全國熱點城市的房租如脫韁野馬。一線的房租同比漲了近20%。一夜醒來,無產青年連一塊立錐之地都懸了。
從2018下半年開始,租金海嘯洶洶來襲,資本狂歡,官方默然,房東糾結,租客尖叫。
這不是一方的過錯,而更像是一場全社會的「集體謀殺作品」。
最令人不安的是,過去房地產的那套玩法和上漲邏輯,今天正在轉移到房租上。
房租暴漲的不只是北京。
有數據顯示,7月份北京、上海、廣州、深圳、天津、武漢、重慶、南京、杭州和成都十大城市租金環比均有所上漲。其中北京、上海、深圳的租金漲幅最猛,北京7月份房租同比上漲3.1%,有小區甚至漲幅超過30%。
圖自「21世紀經濟報道」《最新房租數據出爐,你一個月要交多少錢?(附房租地圖)》一文
接下來,戀習Python通過Python大法通過獲取某網數萬條北京租房數據,給大家說說真實的房租情況。
還是老規矩,老套路(是不是有股熟悉的味道),戀習Python常用的三部曲:數據獲取、數據清洗預覽、數據分析可視化,與你一起探究最近房租的狀況。
一、數據獲取
戀習Python今日就把目前市場佔有率最高的房屋中介公司為目標,來獲取北京、上海兩大城市的租房信息。(目標鏈接:https://bj.lianjia.com/zufang/)
整體思路是:
先爬取每個區域的url和名稱,跟主url拼接成一個完整的url,循環url列表,依次爬取每個區域的租房信息。
在爬每個區域的租房信息時,找到最大的頁碼,遍歷頁碼,依次爬取每一頁的二手房信息。
post代碼之前簡單講一下這裡用到的幾個爬蟲Python包:
requests:
就是用來請求對鏈家網進行訪問的包
lxml:
解析網頁,用xpath表達式與正則表達式一起來獲取網頁信息,相比bs4速度更快
詳細代碼如下:
import
requests
import
timeimport
refrom
lxmlimport
etree# 獲取某市區域的所有鏈接
def
get_areas
(url)
: print("start grabing areas"
) essay-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, essay-headers=essay-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
iin
range(1
,len(areas)): area = areas[i] area_link = areas_link[i] link ="https://bj.lianjia.com"
+ area_link print("開始抓取頁面"
) get_pages(area, link)#通過獲取某一區域的頁數,來拼接某一頁的鏈接
def
get_pages
(area,area_link)
: essay-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, essay-headers=essay-headers) pages = int(re.findall("page-data="{"totalPage":(d+),"curPage""
, resposne.text)[0
]) print("這個區域有"
+ str(pages) +"頁"
)
for
pagein
range(1
,pages+1
): url ="https://bj.lianjia.com/zufang/dongcheng/pg"
+ str(page) print("開始抓取"
+ str(page) +"的信息"
) get_house_info(area,url)#獲取某一區域某一頁的詳細房租信息
def
get_house_info
(area, url)
: essay-headers = {"User-Agent"
:"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36"
} time.sleep(2
)try
: resposne = requests.get(url, essay-headers=essay-headers) content = etree.HTML(resposne.text) info=[]for
iin
range(30
): title = content.xpath("//div[@class="where"]/a/span/text()"
)[i] room_type = content.xpath(
"//div[@class="where"]/span[1]/span/text()"
)[i] square = re.findall("(d+)"
,content.xpath("//div[@class="where"]/span[2]/text()"
)[i])[0
] position = content.xpath("//div[@class="where"]/span[3]/text()"
)[i].replace(" "
,""
)try
: detail_place = re.findall("([u4E00-u9FA5]+)租房"
, content.xpath("//div[@class="other"]/div/a/text()"
)[i])[
0
]except
Exceptionas
e: detail_place =""
floor =re.findall("([u4E00-u9FA5]+)("
, content.xpath("//div[@class="other"]/div/text()[1]"
)[i])[0
] total_floor = re.findall("(d+)"
,content.xpath("//div[@class="other"]/div/text()[1]"
)[i])[0
]try
: house_year = re.findall("(d+)"
,content.xpath("//div[@class="other"]/div/text()[2]"
)[i])[0
]except
Exceptionas
e: house_year =""
price = content.xpath("//div[@class="col-3"]/div/span/text()"
)[i]with
open("鏈家北京租房.txt"
,"a"
,encoding="utf-8"
)as
f: f.write(area +","
+ title +","
+ room_type +","
+ square +","
+position+","
+ detail_place+","
+floor+","
+total_floor+","
+price+","
+house_year+"
"
"writing work has done!continue the next page"
)except
Exceptionas
e: print("ooops! connecting error, retrying....."
) time.sleep(20
)return
get_house_info(area, url)def
main
()
: print("start!"
) url ="https://bj.lianjia.com/zufang"
get_areas(url)if
__name__ =="__main__"
: main()二、數據清洗預覽
數據共14038條,10個維度,由上圖可看出北京房源均價為9590元/月,中位數為7000。一半的房源價格在7000以下,所有房源的價格區間為[1000,250000],價格極差過大。
三、數據分析可視化
四維度-北京房租均價
接下來,戀習Python將北京各區域、各路段、各樓盤房屋數量、均價分布放在同一張圖上,更直觀地來看待房租
從圖中可看出,最近,北京市各區域的房租均在6000元/月以上,其中最高區域為東城,均價達12463元/月。不過,由於房源信息過多過雜,房屋位置、面積、樓層、朝向等對價格均有較大影響,因此,價格這個維度需要進一步分析。
由上圖可得,各路段的均價基本都在6000以上,其中海淀北部新區的房源數最多,但均價最低,為3308元/月,這或許與海淀北部生態科技新區作為高新技術產業的承載區、原始創新策源地的研發基地,以及科技園集聚區,目前已入駐華為、聯想、百度、騰訊、IBM、Oracle等近2000家國內外知名的科技創新型企業有關。另一方面,海淀紫竹橋的房價竟一起衝天,其附近以博物館、體育場館為特色,交通便利,配套設施完善,均價較高也是情理之中。
可以看出,不同樓盤的均價浮動很大,但都在6000/月以上。最高的甚至達到17516/月。由於每個樓盤戶型差別較大,地理位置也較為分散,因此均價波動很大。每個樓盤具體情況還需具體分析。
附詳情代碼:
#北京路段_房屋均價分布圖 "detail_place" "price" "mean" "count" True "count" False 0 20 "detail_place" "count" "mean" "北京主要路段房租均價" "路段" True 30 4.2 "min" "max" 0 "lightblue" 4 "black" "lightblue" False "北京主要路段房屋數量" "路段" True 30 4.2 0 False 1 True "北京路段_房屋均價分布圖.html"
由上圖可以看出,均價在8000-10000之間的房屋數量最多,同時1500-2000這個價位之間房屋數少的可憐。
據北京市統計局的數據,2017年全市居民月人均可支配收入為4769元。另據58同城和趕集網發布的報告,2017年北京人均月租金為2795元。
北京租房者的房租收入比,驚人地接近60%。很多人一半的收入,都花在了租房上,人生就這樣被鎖定在貧困線上。
統計數據也表明,北京租房人群收入整體偏低。47%的租房人,年薪在10萬以下。在北京,能夠負擔得起每月5000元左右房租的群體,就算得上是中高收入人群。就這樣,第一批90後扛過了離婚、禿頭、出家和生育,終於還是倒在了房租面前。
附詳情代碼:
#房源價格區間分布圖 "area" "price" #對價格分區 0 1000 1500 2000 2500 3000 4000 5000 6000 8000 10000 "0-1000" "1000-1500" "1500-2000" "2000-3000" "3000-4000" "4000-5000" "5000-6000" "6000-8000" "8000-1000" "10000以上" "price" "價格區間&房源數量分布" add "" 30 4.2 0 add "價格區間&房源數量分布.html"
面積&租金分布呈階梯性
上圖可以看出,80%的房源面積集中在0-90平方米之間,也符合租客單租與合租情況,大面積的房屋很少。
面積&租金分布呈階梯性,比較符合常理。租房主力軍就是上班族了,一般對房子面積要求較低,基本集中在30平。
附詳情代碼:
#房屋面積分布 0 30 60 90 120 150 200 300 400 700 "0-30" "30-60" "60-90" "90-120" "120-150" "150-200" "200-300" "300-400" "400+" "square_level" "square" "area" "room_type" "square" "position" "total_floor" "floor" "house_year" "price" "square_level" "square_level" "房屋面積分布" "center" add "" 40 75 "vertical" "left" add "房屋面積分布.html" #房屋面積&價位分布 0 30 60 90 120 150 200 300 400 700 "0-30" "30-60" "60-90" "90-120" "120-150" "150-200" "200-300" "300-400" "400+" "square_level" "square" "area" "room_type" "square" "position" "total_floor" "floor" "house_year" "price" "square_level" "square_level" "price" "square_level" "square_level" "square_level" "price" "房屋面積&價位分布布" add "" "房屋面積&價位分布" add "" 30 4.2 0 add "房屋面積&價位分布.html"
大多數房屋年齡在10年以上
由上圖看出,房屋年齡大多集中在10-20年、25年以上,而5年以下的不到2%;不過,別看這些都是老房子,最近房租變得這麼猖狂?原因其中之一就是資本圈地。
這條網貼立馬點燃了大眾的情緒:「好啊,原來是這些長租平台燒錢圈地,一心只想要壟斷市場房源,哄抬租金,企圖賺取暴利差價!」
四、後記
拿自如舉例,表面上看跟中介公司沒啥兩樣,收了各種散盤,然後集中裝修、出租、管理,因為運營成本和住房質量提高,房租肯定有所上漲。
但更關鍵的事情在背後。自如把項目打包起來搞起了資產證券化,以租金收益權為基礎資產做擔保,投放到金融市場上發行國內首單租房市場消費分期類ABS,讓各路資金來認購,每年給大家搞點分紅。
大量資本都在賭租房這個風口,而前期誰的規模越大、資源越多,以後的定價權就越大,利潤空間就越不可想像。
這次戀習Python一共從鏈家網上爬取14038條數據,而那就是大概一周前,8月17日北京住建委約談了幾家中介公司。最終的結果是自如、相寓和蛋殼承諾將拿出12萬間房子投入市場其中,自如將拿出8萬間(鏈家、自如、貝殼找房,他們的實際控制人是同一個人--鏈家老闆左暉。
也就是說,平常的時候,鏈家網+自如一共在網上待租的也就是1萬多套房子,但是一被約談他們就一口氣拿出了8萬套房子增援??怎麼增?繼續收房,讓房源更加供不應求?
昨天買不起房,今天租不起房,如果連這樣的生活也要因為市場的不規範而被逼迫、被奪走,真的會讓人對一個城市失去希望。
作者:丁彥軍
來源:戀習Python(ID:sldata2017)
關注公眾賬號
【
飛馬會
】▼
飛馬會AI人工智慧/大數據/技術管理等人員學習交流園地
往期福利
關注飛馬會公眾號,回復對應關鍵詞打包下載學習資料;
回復「入群」,加入飛馬網AI、大數據、項目經理學習群,和優秀的人一起成長!
回復
數字「1」
下載從入門到研究,人工智慧領域最值得一讀的10本資料(附下載)回復
數字「2」
機器學習 & 數據科學必讀的經典書籍,內附資料包!回復
數字「3」
走進AI & ML:從基本的統計學到機器學習書單(附PDF下載)
回復
數字「4」
了解人工智慧,30份書單不容錯過(附電子版PDF下載)回復
數字「5」
大數據學習資料下載,新手攻略,數據分析工具、軟體使用教程
回復
數字「6」
AI人工智慧:54份行業重磅報告匯總(附下載)
回復
數字「7」
TensorFlow介紹、安裝教程、圖像識別應用(附安裝包/指南)
回復
數字「8」
大數據資料全解析(352個案例+大數據交易白皮書+國內外政策匯篇)
回復
數字「9」
乾貨 | 薦讀10本大數據書籍(初級/中級/高級)成為大數據專家!
回復
數字「10」
麥肯錫160頁報告:2030年全球將可能8億人要被機器搶飯碗
回復
數字「11」
50本書籍大禮包:AI人工智慧/大數據/Database/Linear Algebra/Python/機器學習/Hadoop
回復
數字「12」
小白| Python+Matlab+機器學習+深度神經網路+理論+實踐+視頻+課件+源碼,附下載!
回復
數字「13」
大數據技術教程+書籍+Hadoop視頻+大數據研報+科普類書籍
回復
數字「14」
小白| 機器學習和深度學習必讀書籍+機器學習實戰視頻/PPT+大數據分析書籍推薦!
回復
數字「15」
大數據hadoop技術電子書+技術理論+實戰+源代碼分析+專家分享PPT
回復
數字「16」
100G Python從入門到精通!自學必備全套視頻教程+python經典書籍!
回復
數字「17」
【乾貨】31篇關於深度學習必讀論文匯總(附論文下載地址)
回復
數字「18」
526份行業報告+白皮書:AI人工智慧、機器人、智能出行、智能家居、物聯網、VR/AR、 區塊鏈等(附下載)
回復
數字「19」
800G人工智慧學習資料:AI電子書+Python語言入門+教程+機器學習等限時免費領取!
回復
數字「20」
17張思維導圖,一網打盡機器學習統計基礎(附下載)
回復
數字「21」
收藏 |7本 Matlab入門經典教程書籍,不可錯過!
回復
數字「22」
吳恩達新書,教你構建機器學習項目:《Machine Learning Yearning》
回復
數字「23」
機器學習:怎樣才能做到從入門到不放棄?(內含福利)
回復
數字「24」
限時下載 | 132G編程資料:Python、JAVA、C,C++、機器人編程、PLC,入門到精通~
回復
數字「25」
限資源 | 177G Python/機器學習/深度學習/演算法/TensorFlow等視頻,涵蓋入門/中級/項目各階段!
回復
數字「26」
人工智慧入門書單推薦,學習AI的請收藏好(附PDF下載)
回復
數字「27」
資源 | 吳恩達斯坦福CS230深度學習課程全套資料放出(附下載)
回復
數字「28」
懂這個技術的程序員被BAT瘋搶...(內含資料包)
回復
數字「29」
乾貨 | 28本大數據/數據分析/數據挖掘電子書合集免費下載!
回復
數字「30」
領取 | 100+人工智慧學習、深度學習、機器學習、大數據、演算法等資料,果斷收藏!
回復
數字「31」
2G谷歌機器學習25講速成課全集(中文版),限時下載
回復
數字「32」
Matlab安裝包+教程視頻,讓你從入門到精通!
回復
數字「33」
程序員去阿里面試,沒想到過程如此壯烈 (內含資料包)
回復
人工智慧
下載《FMI人工智慧與大數據峰會嘉賓演講PPT》
回復
AI 江湖
下載《十大AI江湖領域》
回復
ML實踐
下載《機器學習實踐經驗指導(英文版)》
回復
DL論文
下載《深度學習100篇以上論文資料》
回復
演算法
下載
《數據挖掘十大經典演算法》
回復
6.10
下載《6.10餓了么&飛馬網項目管理實踐PPT》
資深程序員想轉行嗎?點擊
「閱讀原文」
推薦閱讀:
※Supervisor是一枚大坑
※Python史上最全數據類型,拿走不謝!
※入門:用Python抓取網頁上的免費賬號(五)
※Python文學家為Python寫的一首詞?(附中英文版)
※python基礎-循環(while)