부동산 매물 정보 수집 방법 – 부동산 데이터 크롤링 및 처리 #1 ㅣ 네이버 부동산 데이터는 매우 유용하게 활용할 수 있지만, 원하는 형태로 변환된 자료를 얻는 것은 상당히 어렵습니다. Excel의 VBA를 사용하여 데이터를 변환하는 방법이 소개되곤 하지만, Python의 뛰어난 기능을 통해 실시간 부동산 매물 정보를 크롤링하는 구체적인 방법을 공부하고 있습니다.
이제 네이버 부동산에서 방대한 데이터를 Python을 활용해 필요한 정보를 직접 수집해 보겠습니다.
네이버 부동산은 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))
다음편에서는 각 아파트별 정보를 얻을 수 있는 파이썬 코드를 알아보도록 하겠습니다.
[두괄식 도입. 첫 문장에 가장 중요한 결론이나 사실을 직접 명시. 참고자료의 핵심 내용을 바탕으로 3~4문장…
밈주식은 인터넷에서 유행하는 콘텐츠를 뜻하는 밈과 주식을 의미하는 스택이 합쳐진 용어로, 온라인상에서 입소문으로 개인투자자의 관심을…
국토교통부가 전국 생활숙박시설(생숙)을 대상으로 실시한 광고 모니터링 결과, 주거용으로 사용할 수 없음에도 불구하고 아파트나 주택처럼…
2026년 6월 19일 미국 애틀랜타 스타디움에서 진행된 북중미월드컵 A조 2차전에서 체코와 남아공이 1-1로 비기면서 대한민국의…
서울시가 지하철에만 적용되던 노인 무임승차를 시내버스와 마을버스로 확대하는 방안을 본격 추진하고 있습니다. 70세 이상 어르신을…
2026년 6월 18일 오후 4시43분 서울 강남구 역삼역 인근에서 승용차 한 대가 버스를 후미에서 들이받으면서…