name: naver-apartment-listings description: 네이버 부동산에서 특정 아파트명, 면적(전용/공급), 거래유형(매매/전세/월세), 가격 조건을 받아 해당 조건의 호가 목록을 수집/정리한다. Use when user asks to fetch current Naver Real Estate listings for a specific apartment with filters.
Naver Apartment Listings
입력 받기
반드시 아래를 먼저 확인한다.
- 단지명 (예: 마포래미안푸르지오)
- 지역 (시/구/동)
- 면적 기준과 값 (전용 84 / 공급 109 등)
- 거래유형 (매매/전세/월세)
- 가격 범위 (최소~최대)
- 추가조건 (층, 동, 옵션, 방향 등)
정보가 부족하면 한 번에 묶어서 질문한다.
실행 절차
- browser 툴로 네이버 부동산 검색/단지 페이지로 이동한다.
- 거래유형 필터(매매/전세/월세)를 설정한다.
- 면적 필터를 설정한다.
- 가격 범위를 설정한다.
- 동일매물 묶기 옵션을 활성화해 중복 노출을 1차 제거한다.
- 목록 페이지를 끝까지 순회한다(페이지 넘김/더보기/무한스크롤 포함).
- 각 매물 카드의 기본 필드를 수집한다.
- 각 매물 상세(또는 확장 카드)에서 상세설명/옵션 필드를 추가 수집한다.
- dedupe + 정규화 후 결과를 저장/요약한다.
페이지 넘김 완전 수집 규칙
- 페이지 번호가 있으면 마지막 페이지까지 순차 클릭한다.
- 무한스크롤이면 스크롤 후 항목 수 증가가 멈출 때까지 반복한다(최대 반복 횟수 지정).
- "더보기" 버튼이 있으면 더 이상 비활성화될 때까지 클릭한다.
- 각 페이지/스크롤 단계마다 현재 누적 건수와 신규 건수를 기록한다.
수집 필드(기본)
- 단지명
- 매물명/제목
- 거래유형
- 가격 (매매가, 전세가, 월세 보증금/월세)
- 면적 (공급/전용, 타입명)
- 동/층/총층
- 방향
- 확인일/등록일
- 중개사무소명
- 상세 URL(가능 시)
수집 필드(상세)
- 매물 상세 설명 원문
- 옵션/특징 키워드(예: 시스템에어컨, 중문, 입주협의, 전세안고)
- 입주 가능 시점
- 난방/주차/관리비(노출 시)
- 중개사 연락처/상호(노출 시)
- 이미지 유무/VR 유무(노출 시)
출력 형식
Discord에서는 표를 쓰지 말고 bullet 리스트로 정리한다.
- 검색조건 요약
- 총 결과 수(원본) / 유효 결과 수(dedupe 후)
- 상위 N개 매물 요약
- 가격대 분포 코멘트(최저/중앙/최고)
- 주의사항 (중복/광고/조건 불명확 항목)
대화 진행 순서(필수)
사용자 요청 시 아래 순서를 반드시 지킨다.
- 매물 브리핑 먼저 제공
- 조건 요약 + 유효 매물 수 + 가격대 + 가성비 후보를 먼저 텍스트로 제공한다.
- CSV 추출 여부 질문
- 브리핑 직후 반드시 한 줄로 질문한다:
CSV/JSON 파일까지 뽑을까요? (예/아니오)
- 사용자가
예라고 답하면 파일을 생성한다. 아니오면 파일 생성 없이 종료한다.
- 비교 리포트 자동화 제안 및 실행
- 파일 생성 후 반드시 묻는다:
이 결과를 기준선으로 저장하고 다음 조회 때 자동 비교 리포트(신규/삭제/가격변경)까지 진행할까요? (예/아니오)
예면 아래 자동 비교 리포트 절차를 실행한다.
파일 산출(요청 시):
exports/naver-listings-<YYYYMMDD-HHMM>.jsonexports/naver-listings-<YYYYMMDD-HHMM>.csv
JSON에는 원문 필드를 최대한 보존하고, CSV에는 비교 가능한 정규화 컬럼(가격 숫자화, 층 분리, 타입 분리)을 포함한다.
신뢰성 규칙
- 같은 매물 중복은
단지+동+라인/타입+층+가격+중개사우선 키로 dedupe한다. - 상세 URL이 있으면 URL을 1순위 키로 사용한다.
- 필터가 정확히 적용됐는지 페이지 상태(거래유형/면적/가격대)를 수집 전후 2회 확인한다.
- 결과가 너무 적으면 조건 완화 제안을 함께 준다.
- 네이버 UI 변경으로 실패하면 실패 지점(어느 필터/페이지 단계에서 막혔는지)을 명확히 보고한다.
- 수집 완료 시
원본건수/중복제거건수/최종건수를 반드시 함께 보고한다.
자동 비교 리포트 절차
기준선 저장 경로:
exports/baseline/<complex-slug>-<trade>-<area>.json
실행 규칙:
- 이번 수집 결과를 정규화 키(동+타입+층+가격+중개사)로 정리한다.
- 기준선 파일이 없으면 현재 결과를 기준선으로 저장하고 종료한다.
- 기준선이 있으면 비교해 아래를 산출한다.
- 신규 매물 (이전 없음, 현재 있음)
- 삭제 매물 (이전 있음, 현재 없음)
- 가격 변경 (동일 매물키에서 가격 변경)
- 비교 요약을 Discord bullet로 보고한다.
- 비교 상세 파일 저장:
exports/diff/<complex-slug>-<YYYYMMDD-HHMM>.json
실패 시 대응
- 페이지 로드 실패: 새로고침 후 재시도 1회
- 필터 요소 미발견: aria/텍스트 기준 재탐색
- 캡차/차단 의심: 자동화 중단 후 사용자에게 수동 확인 요청
안전/정책
- 로그인/개인계정 필요 동작은 사용자 확인 후 진행한다.
- 과도한 반복 요청은 피하고 필요한 범위만 조회한다.