Files
nomadamas__k-skill/docs/features/danawa-price-search.md
Jeffrey (Dongkyu) Kim 5680497cb3 Keep Danawa price search mergeable and consistent
Merge the current dev branch so PR #226 no longer conflicts with the SH notice removal and marathon-schedule additions, while keeping the Danawa helper/documentation aligned with its 실구매가 contract. The PR diff is narrowed to Danawa files, README discovery, and the root lint hook for the new helper.

Constraint: PR #226 targets dev and GitHub reported DIRTY before this worker fix.

Rejected: Leaving inherited court-auction release metadata and SH-notice whitespace in the PR | they were unrelated to the Danawa skill and disappeared after reconciling with current dev.

Confidence: high

Scope-risk: narrow

Directive: Keep Danawa examples and JSON field docs synchronized with danawa_search.py CLI/output names.

Tested: python3 -m py_compile danawa-price-search/scripts/danawa_search.py; python3 danawa-price-search/scripts/danawa_search.py --help; python3 danawa-price-search/scripts/danawa_search.py search '에어팟 프로 2세대' --limit 1; npm run ci; git diff --check

Not-tested: Live Danawa offers endpoint after commit beyond search smoke.
2026-05-12 19:05:29 +09:00

2.0 KiB

다나와 최저가 비교 (danawa-price-search)

다나와 공개 검색/가격비교 표면을 사용해 상품 후보를 찾고, 쇼핑몰별 가격을 배송비 포함 실구매가 기준으로 비교하는 스킬입니다.

사용 시나리오

  • "다나와에서 맥북 에어 M4 최저가 비교해줘"
  • "이 다나와 pcode 쇼핑몰별 가격 표로 보여줘"
  • "배송비랑 카드할인까지 포함해서 어디가 제일 싼지 봐줘"

구현 표면

브라우저 자동화나 로그인을 사용하지 않습니다.

  1. 검색: https://search.danawa.com/dsearch.php?query=...
  2. 상품 상세 확인: https://prod.danawa.com/info/?pcode=...
  3. 쇼핑몰별 가격비교 AJAX: https://prod.danawa.com/info/ajax/getAllPriceCompareMallList.ajax.php

로컬 실행

python3 danawa-price-search/scripts/danawa_search.py search "맥북 에어 M4" --limit 5
python3 danawa-price-search/scripts/danawa_search.py offers 28208783 --limit 10
python3 danawa-price-search/scripts/danawa_search.py compare "갤럭시 S25" --limit 3 --offers 5

출력 해석

offers와 compare 결과에는 다음 필드가 포함됩니다.

  • mall: 쇼핑몰명
  • price: 표시 가격
  • shipping_fee: 배송비 숫자. 무료배송이면 0, 파싱 불가면 null
  • is_free_shipping: 무료배송 여부
  • total_price: 가격 + 배송비 기준 실구매가 후보
  • card_price: 카드 적용 표시가
  • card_discount: 표시가와 카드가 차액
  • installment: 무이자 할부 문구
  • url: 다나와 경유 링크

사용자에게는 total_price 기준으로 정렬한 Markdown 표를 먼저 보여주고, 카드가는 별도 열에 표시합니다.

주의사항

  • 다나와의 공개 HTML/AJAX 구조가 바뀌면 selector와 파싱 규칙을 갱신해야 합니다.
  • 자동 구매, 로그인, CAPTCHA 우회, 결제 단계 자동화는 이 스킬의 범위가 아닙니다.
  • 동일 상품명이라도 옵션/용량/모델명이 섞일 수 있으므로 검색 후보를 먼저 확인한 뒤 가격비교를 진행합니다.