이 가이드는 네이버 부동산 매물 데이터를 자동으로 수집하는 방법을 아주 상세하고 친절하게 설명합니다. 컴퓨터를 잘 모르는 사람도 따라할 수 있게 차근차근 알려드릴 테니 걱정 마세요! 😊
1. Python 설치 확인하기
윈도우 + R을 누르고 cmd 입력 후 엔터를 누릅니다.python --version만약 버전이 나오면 설치된 것입니다. 그렇지 않으면 Python 공식 사이트에서 설치하세요.2. 필요한 라이브러리 설치하기
터미널에서 아래 명령어를 입력합니다:
pip install requests
pip install beautifulsoup4
pip install pandas
아래 코드는 네이버 부동산의 특정 매물 정보를 자동으로 수집하는 예제입니다.
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 네이버 부동산 URL (예제 링크, 실제 사용할 페이지 URL로 변경하세요)
base_url = "https://new.land.naver.com/complexes?ms=37.5665,126.9780"
# 사용자 정의 함수: HTML 페이지 가져오기
def get_html(url):
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.text
else:
print(f"페이지를 불러오는 데 실패했습니다. 상태 코드: {response.status_code}")
return None
# 매물 정보 파싱 함수
def parse_properties(html):
soup = BeautifulSoup(html, 'html.parser')
properties = []
# 매물 리스트 파싱 (CSS 선택자 수정 필요)
items = soup.select('div.item_list_area div.item_inner')
for item in items:
# 매물명, 가격, 위치 등 정보 추출
name = item.select_one('span.name').get_text(strip=True)
price = item.select_one('span.price').get_text(strip=True)
location = item.select_one('span.location').get_text(strip=True)
properties.append({
"매물명": name,
"가격": price,
"위치": location
})
return properties
# 데이터 저장 및 실행
def main():
html = get_html(base_url)
if html:
properties = parse_properties(html)
# DataFrame으로 변환 후 CSV 파일로 저장
df = pd.DataFrame(properties)
df.to_csv('naver_properties.csv', index=False, encoding='utf-8-sig')
print("데이터 수집 및 저장 완료: naver_properties.csv")
if __name__ == "__main__":
main()
Python 코드 저장
C:\projects\naver_real_estate.py).터미널에서 실행하기
cd C:\projectspython naver_real_estate.py결과 확인
naver_properties.csv 파일이 생성되었는지 확인하세요.네이버 부동산 구조가 변경될 경우
parse_properties() 함수의 CSS 선택자를 수정해야 합니다.더 많은 페이지 크롤링
for page in range(1, 11): # 1페이지부터 10페이지까지
page_url = f"https://new.land.naver.com/complexes?page={page}"
html = get_html(page_url)
# 나머지 코드는 동일import time
time.sleep(3) # 3초 대기이 가이드를 따라 하시면 네이버 부동산 매물 데이터를 자동으로 수집하는 프로그램을 만들 수 있습니다! 😊