Categories: 미분류

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

Warning: getimagesize(https://i0.wp.com/blog.kakaocdn.net/dna/YBEvR/btsJEUU24W5/AAAAAAAAAAAAAAAAAAAAACuOb7L2O5sFDGtNrI33P4xl3ZiK1ANU52QKMgkKvHKz/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1767193199&allow_ip&allow_referer&signature=g7Jwt%2BfH7lWMpwOntgd4N43D55U%3D&ssl=1): Failed to open stream: HTTP request failed! HTTP/1.1 404 File Not Found in /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/components/featured-image/featured-image.php on line 64 Call Stack: 0.0000 360832 1. {main}() /volume1/web/aboda_re/index.php:0 0.0000 361136 2. require('/volume1/web/aboda_re/wp-blog-header.php') /volume1/web/aboda_re/index.php:17 0.8691 62683640 3. require_once('/volume1/web/aboda_re/wp-includes/template-loader.php') /volume1/web/aboda_re/wp-blog-header.php:19 0.8691 62683640 4. do_action($hook_name = 'template_redirect') /volume1/web/aboda_re/wp-includes/template-loader.php:13 0.8691 62683856 5. WP_Hook->do_action($args = [0 => '']) /volume1/web/aboda_re/wp-includes/plugin.php:517 0.8691 62683856 6. WP_Hook->apply_filters($value = '', $args = [0 => '']) /volume1/web/aboda_re/wp-includes/class-wp-hook.php:348 0.8780 62937792 7. AMPforWP\AMPVendor\amp_render('') /volume1/web/aboda_re/wp-includes/class-wp-hook.php:324 1.1290 69633776 8. AMPforWP\AMPVendor\AMP_Post_Template->load() /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/includes/vendor/amp/amp.php:95 1.1290 69633776 9. AMPforWP\AMPVendor\AMP_Post_Template->load_parts($templates = [0 => 'single']) /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/includes/vendor/amp/includes/class-amp-post-template.php:160 1.1290 69634096 10. AMPforWP\AMPVendor\AMP_Post_Template->verify_and_include($file = '/volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/templates/design-manager/swift/single.php', $template_type = 'single') /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/includes/vendor/amp/includes/class-amp-post-template.php:166 1.1313 69734024 11. include('/volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/templates/design-manager/swift/single.php') /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/includes/vendor/amp/includes/class-amp-post-template.php:501 1.1756 69860072 12. amp_featured_image() /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/templates/design-manager/swift/single.php:45 1.1756 69860072 13. ampforwp_framework_get_featured_image() /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/components/components-core.php:225 1.1851 69861288 14. getimagesize($filename = 'https://i0.wp.com/blog.kakaocdn.net/dna/YBEvR/btsJEUU24W5/AAAAAAAAAAAAAAAAAAAAACuOb7L2O5sFDGtNrI33P4xl3ZiK1ANU52QKMgkKvHKz/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1767193199&allow_ip&allow_referer&signature=g7Jwt%2BfH7lWMpwOntgd4N43D55U%3D&ssl=1') /volume1/web/aboda_re/wp-content/plugins/accelerated-mobile-pages/components/featured-image/featured-image.php:64

부동산 매물 정보 수집 방법 – 부동산 데이터 크롤링 및 처리 #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

별마당도서관 위치 가는 방법 총정리 – 코엑스·수원점 안내

별마당도서관은 스타필드 코엑스몰과 스타필드 수원센터에 각각 위치한 서울과 경기의 핫플레이스다. 특히 2026년 현재 코엑스점은 개관…

7분 ago

첨밀밀 등려군 장만옥: 90년대 홍콩 멜로의 전설 다시 보기

1996년, 홍콩 영화사에 이름을 새긴 명작 '첨밀밀'. 여명과 장만옥이 선보인 감정선은 지금도 많은 이들에게 강렬한…

6시간 ago

2026 한강대학가요제: 청춘의 열정이 피어난 음악 축제

2026 한강대학가요제는 국내외 189개팀이 참여한 순수 창작곡 경연대회로, 최종 우승은 ‘가로인들’이 차지했다. 서울 잠원한강공원 다목적운동장에서…

6시간 ago

북중미 월드컵 대한민국 명단 26인 발표, 홍명보 감독 전술 전략 파헤치기

2026년 북중미 월드컵 한국 대표팀 최종 26인 명단이 오늘 오후 4시, 서울 KT 광화문 KT…

15시간 ago

아이유 3억 기부, 팬과 함께한 특별한 생일 선물의 의미

가수 겸 배우 아이유가 자신의 33번째 생일을 맞아 3억 원의 거액을 기부하며 연예계 대표 기부…

18시간 ago

교생실습 영화 개봉 3일차 박스오피스 7위, 수능 귀신과 흑마술 동아리의 공포 코믹스

교생실습 영화는 5월 13일 CGV 단독 개봉한 공포 코미디로, 개봉 3일차인 5월 15일 기준 박스오피스…

21시간 ago