跳至主要內容
FinLab

用 Python 分析房地產可行嗎?實價登入房地產爬蟲教學

用程式分析房地產可行嗎?房地產爬蟲教學縮圖

賺了一輩子的錢,還不如買對一戶房! 非常誇張,但又滿有道理的 假如一定要買房子,要買在哪裡呢? 如何找到抗跌的地段? 隨著屋齡不同,房價應該要如何變化呢?

這些問題,可能只有房地產專家一一為你解惑, 但一般人要買房,除了相信專家以外,還能怎麼辦呢?

利用程式來研究,自己當專家 現在台灣有實價登入的法規,這些資訊都是公開透明的 (雖然實價不等於真的成交價,但應該還是有正相關)

要爬取這些資訊,只要很短的程式碼:

顯示程式碼
import requests
import os
import zipfile
import time
 
def real_estate_crawler(year, season):
  if year > 1000:
    year -= 1911
 
  # download real estate zip content
  res = requests.get("https://plvr.land.moi.gov.tw//DownloadSeason?season="+str(year)+"S"+str(season)+"&type=zip&fileName=lvr_landcsv.zip")
 
  # save content to file
  fname = str(year)+str(season)+'.zip'
  open(fname, 'wb').write(res.content)
 
  # make additional folder for files to extract
  folder = 'real_estate' + str(year) + str(season)
  if not os.path.isdir(folder):
    os.mkdir(folder)
 
  # extract files to the folder
  with zipfile.ZipFile(fname, 'r') as zip_ref:
      zip_ref.extractall(folder)
 
  time.sleep(10)

然後我們再寫個 for 迴圈,就可以將近 8 年的房價買賣資訊都爬下來

顯示程式碼
real_estate_crawler(101, 3)
real_estate_crawler(101, 4)
 
for year in range(102, 108):
  for season in range(1,5):
    print(year, season)
    real_estate_crawler(year, season)
 
real_estate_crawler(108, 1)
real_estate_crawler(108, 2)

這邊就先簡單的放上爬蟲,也有線上colab範例直接運行

之後我們會來研究, 究竟那邊的房價衰退的比較快? 哪裡是比較抗跌的區域? 哪裡的房子最便宜又最抗跌?

假如你對這系列有興趣的話, 可以到粉絲團的這篇文章按個讚 這樣我才知道這是大家想看的 才會繼續往下寫喔!

想建立自己的策略?

用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案

免費開始