Categories: 미분류

부동산 매물 정보 수집하기 – 부동산 데이터 네이버 부동산 크롤링 및 가공 #1

부동산 매물 정보 수집 방법 – 부동산 데이터 크롤링 및 처리 #1 ㅣ 네이버 부동산 데이터는 매우 유용하게 활용할 수 있지만, 원하는 형태로 변환된 자료를 얻는 것은 상당히 어렵습니다. Excel의 VBA를 사용하여 데이터를 변환하는 방법이 소개되곤 하지만, Python의 뛰어난 기능을 통해 실시간 부동산 매물 정보를 크롤링하는 구체적인 방법을 공부하고 있습니다.

이제 네이버 부동산에서 방대한 데이터를 Python을 활용해 필요한 정보를 직접 수집해 보겠습니다.

부동산 매물 정보 수집하기 – 부동산 데이터 크롤링 및 가공 #1

부동산 매물 정보 수집하기 – 부동산 데이터 크롤링 및 가공 #1

네이버 부동산은 PC 환경과 모바일 환경으로 나누어져 서비스 되어지고 있으며,각각의 환경을 크롤링하는 방식도 차이가 있습니다. 두 방식 중에서 모바일 환경을 크롤링하는 방식이 보여지는 정보가 적어서 보다 유리합니다.

PC환경

모바일환경

특정 아파트 단지의 매물 정보 가져오기

아래 이미지에서는 http://m.land.naver.com에 접속하여 ‘상암월드컵파크4단지’의 매물과 관련된 정보를 보여준다. 여기서 중요한 요소는 아파트 단지의 고유 식별자인 ‘23620’과 거래 방식을 나타내는 코드 ‘A1:B1:B2 ‘입니다. 각 코드의 의미는 A1은 매매, B1은 전세, B2는 월세, 그리고 B3는 단기임대에 해당합니다.

예를 들어, 다음 주소에서 매물 정보를 확인할 수 있습니다: https://m.land.naver.com/complex/info/23620?tradTpCd=A1:B1:B2:B3&ptpNo=1&bildNo=&articleListYN=Y

네이버페이 부동산

네이버페이 부동산

m.land.naver.com

특정단지의 매물값을 가져오는 코드를 다시 작성해보면 아래와 같습니다.

import requests
import json
import pandas as pd

URL = "https://m.land.naver.com/complex/getComplexArticleList"

parameter = {
    'hscpNo': '23620', # 상암월드컵파크4단지 고유번호
    'tradTpCd': 'A1:B1:B2', # 거래방식 3가지
    'order': 'spc_', # 면적별 정열
}

header = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36 Edg/112.0.1722.39',
    'Referer': 'https://m.land.naver.com/'
}

page = 0
lands = []

while True:
    page = page + 1
    parameter['page'] = page

    response = requests.get(URL, params=parameter, headers=header)
    if response.status_code != 200:
        print('invalid status: %d' % response.status_code)
        break

    data = json.loads(response.text)
    result = data['result']
    if result is None:
        print('no result')
        break
    
    for item in result['list']:
        lands.append([item['tradTpNm'], item['bildNm'], item['flrInfo'], item['prcInfo'], item['spc1']])
    
    if result['moreDataYn'] == 'N':
        break
print(pd.DataFrame(lands))

 

다음편에서는 각 아파트별 정보를 얻을 수 있는 파이썬 코드를 알아보도록 하겠습니다.

urjent

Share
Published by
urjent

Recent Posts

공무원연금 수급 시기와 지급 정지 조건 완벽 정리

공무원연금 수급 시기는 임용 시기와 퇴직 시기에 따라 다르게 적용되며 재취업 시 지급 정지 규정까지…

39분 ago

개인연금저축 세액공제 한도와 IRP 차이점 비교 총정리

개인연금저축은 매년 연말정산에서 수십만 원에서 수백만 원까지 환급금을 안겨주는 가장 확실한 절세 수단입니다. 직장인이라면 누구나…

2시간 ago

퇴직연금수령방법 일시금 대신 연금으로 받으면 세금 아끼는 법

퇴직연금수령방법을 어떻게 선택하느냐에 따라 나중에 손에 쥐는 목돈의 크기가 하늘과 땅 차이만큼 벌어지게 됩니다. 작년에…

3시간 ago

연금저축계좌 세액공제 한도와 50대 노후 준비 재테크 전략

연금저축계좌는 연말정산 환급금을 극대화하고 든든한 노후 자산을 모으기 위해 직장인과 은퇴 준비생 모두가 반드시 활용해야…

4시간 ago

노령연금 수급 나이와 조기수령 조건, 감액 기준 완벽 정리

노령연금은 1969년생 이후 출생자라면 만 65세부터 받을 수 있으며 정년 퇴직 시기와 수급 시기의 소득…

5시간 ago

연금저축펀드 세액공제 한도와 증권사 선택 꿀팁 완벽 가이드

연금저축펀드는 매년 연말정산에서 수십만 원에서 최대 백만 원이 넘는 세금을 돌려받으면서 노후 자금까지 동시에 굴릴…

6시간 ago