피드로 돌아가기
Dev.toBackend
원문 읽기
I Built a Price Monitoring System in 30 Minutes — Here's the Stack (All Free APIs)
개발자가 Sitemap + JSON-LD 구조화된 데이터 + GitHub API로 무료 가격 모니터링 시스템을 30분에 구축해 월 $99-1000의 상용 도구 대체
AI 요약
Context
경쟁사 가격 추적 도구(Prisync $99-399/월, Competera $1000+/월)는 중소 전자상거래 사업자에게 비용 부담이 크다. 10-50개 상품의 3-5개 경쟁사 가격 변동 추적, 가격 이력 저장, 변동 알림이 필요하지만 저비용 솔루션이 없다.
Technical Solution
- Sitemap 파싱으로 제품 URL 자동 발견: XML sitemap을 axios + xml2js로 파싱하여 847개의 제품 페이지 자동 추출 (HTML 크롤링 대신 robots.txt 참조)
- JSON-LD 구조화된 데이터에서 가격 추출: cheerio로 HTML의
script[type="application/ld+json"]태그를 파싱해 상품명, 가격, 통화, 재고 정보 자동 추출 - GitHub API를 데이터 저장소로 활용: Octokit 라이브러리로 일일 가격 스냅샷을
data/YYYY-MM-DD.json형식으로 GitHub 리포지토리에 저장 - 가격 변동 감지 및 Webhook 알림: 전날 대비 가격 변동률 계산 후 Discord/Slack Webhook으로 변동 내역 전송
- Cron 기반 자동화 스케줄링: Linux crontab에
0 8 * * * node monitor.js로 일일 8시 자동 실행 구성
Impact
- 월 비용 $0 (상용 도구 대비 $99-1000 절감)
- 3주 운영 결과 12개 상품 가격 조정으로 첫 달 $800 절감
- 150줄의 JavaScript로 상용 솔루션 기능 구현
Key Takeaway
전자상거래 사이트 대부분이 JSON-LD 구조화된 데이터와 XML sitemap을 노출하므로, 무료 오픈소스 라이브러리(axios, cheerio, Octokit)와 GitHub 같은 무료 서비스 조합으로 복잡한 웹 크롤링과 데이터베이스 인프라 없이도 프로덕션급 모니터링 시스템을 구축할 수 있다.
실천 포인트
중소 전자상거래 사업자나 초기 스타트업에서 경쟁사 가격 모니터링이 필요할 때, Sitemap API와 JSON-LD 파싱을 먼저 시도하면 HTML 크롤링보다 안정성이 높고, GitHub를 타임시리즈 데이터 저장소로 활용하면 추가 인프라 비용 없이 버전 관리와 API 접근을 모두 확보할 수 있다.