가격 비교 크롤링 실험 – 자동화로 살펴본 진짜 최저가 찾기
안녕하세요, 오토마스터입니다. 이번 포스팅에서는 많은 분들이 일상적으로 사용하는 쇼핑 플랫폼인 쿠팡과 네이버 스마트스토어를 대상으로 가격 비교 크롤링 실험을 진행해보았습니다. "자동화 실험실 AutoT" 블로그답게, 이번에도 파이썬 기반 자동화를 활용해 실제 데이터를 수집하고 비교 분석하는 방식으로 실험을 설계했습니다. 특히 **누가 진짜 최저가를 제공하는가?**라는 현실적인 질문에 접근하는 실험으로, 소비자 입장에서 매우 실용적인 인사이트를 제공하고자 합니다.
실험 목적
- 쿠팡과 네이버 스마트스토어 중 어떤 플랫폼이 동일 상품에서 더 저렴한 가격을 제공하는지 자동화로 확인해보기
- 가격 외에도 배송 방식, 판매자 수, 상품 등록 키워드 등의 요소도 함께 분석하여 실질적 쇼핑 의사결정에 도움이 되는 요소를 정리
- 자동화 프로세스를 통한 가격 모니터링 시스템의 기초 구현 가능성 테스트
실험 구성 및 도구
✅ 사용 언어 및 라이브러리
- Python 3.11
- 주요 라이브러리: requests, BeautifulSoup, Selenium, pandas, re, time, json
✅ 비교 기준 상품 선정
총 10개 상품을 선정했습니다. 아래와 같은 기준을 따랐습니다:
- 일상에서 자주 사용하는 품목 (예: 전기포트, 생수, 생리대, 화장지 등)
- 상품명 검색 시 **상품 스펙(용량, 수량 등)**이 명확한 제품
- 쿠팡과 스마트스토어 양쪽 모두에서 판매되고 있는 제품
✅ 크롤링 설계
- 쿠팡은 자동 로그인 없이 검색결과 첫 페이지 상단 상품 기준으로 가격 수집 (로켓배송 여부 포함)
- 스마트스토어는 네이버 쇼핑 검색 결과에서 스마트스토어만 필터링 후 상단 상품 가격 수집
- 양쪽 모두 최저가 + 배송비 포함 가격을 기준으로 정리
실험 결과 요약 (일부 발췌)
상품명 | 쿠팡 최저가(배송비포함) | 스마트스토어 최저가(배송비포함) | 더 저렴한 플랫폼 |
생수 2L 12개입 | 7,990원 | 8,500원 | 쿠팡 |
전기포트 | 27,900원 | 26,300원 | 스마트스토어 |
생리대 중형 40매 | 10,500원 | 9,800원 | 스마트스토어 |
각티슈 3팩 | 4,890원 | 4,890원 | 동일 |
건전지 AA 20개 | 9,700원 | 10,200원 | 쿠팡 |
→ 스마트스토어가 더 저렴한 경우도 많았고, 쿠팡은 로켓배송이 가능한 경우가 많아 배송 속도 우위를 가짐.
분석 포인트
1️⃣ 가격만이 전부는 아니다
쿠팡은 로켓배송이라는 압도적인 배송 속도가 가장 큰 강점입니다. 반면 스마트스토어는 다양한 판매자가 경쟁적으로 가격을 조정하고 있어서, 일부 품목은 놀라운 최저가가 등장하기도 합니다.
2️⃣ 배송비 계산 필수
배송비가 따로 붙는 경우 스마트스토어의 경우 정가보다 실질 결제 금액이 높아지는 경우도 종종 발생합니다. 반드시 배송비를 포함한 가격 비교가 필요합니다.
3️⃣ 상품명 키워드 최적화 중요
같은 상품인데도 등록 키워드나 스펙 표시가 조금만 달라지면 검색 결과가 완전히 달라질 수 있습니다. 이 부분은 크롤러 개발 시에도 정규표현식 기반 필터링 로직을 넣는 것이 중요합니다.
파이썬 크롤링 코드 & 실제 출력 예시
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
options = webdriver.ChromeOptions()
options.add_argument('--headless')
driver = webdriver.Chrome(options=options)
query = "전기포트"
# 쿠팡 검색
print("[쿠팡 상위 상품 정보]")
driver.get(f"https://www.coupang.com/np/search?q={query}")
time.sleep(3)
products = driver.find_elements(By.CLASS_NAME, 'search-product')
for product in products[:3]:
try:
name = product.find_element(By.CLASS_NAME, 'name').text
price = product.find_element(By.CLASS_NAME, 'price-value').text
print(f"상품명: {name} / 가격: {price}")
except:
continue
# 네이버 스마트스토어 검색
print("\n[네이버 스마트스토어 상위 상품 정보]")
driver.get(f"https://search.shopping.naver.com/search/all?query={query}")
time.sleep(3)
products = driver.find_elements(By.CSS_SELECTOR, '.product_info_area__xxCTi')
for product in products[:3]:
try:
name = product.find_element(By.CSS_SELECTOR, '.product_title__Mmw2K').text
price = product.find_element(By.CSS_SELECTOR, '.price_num__S2p_v').text
print(f"상품명: {name} / 가격: {price}")
except:
continue
driver.quit()
✅ 예시 출력 결과
[쿠팡 상위 상품 정보]
상품명: 키친플라워 전기포트 / 가격: 27,900원
상품명: 필립스 무선 전기포트 HD9350 / 가격: 42,900원
상품명: 리빙웰 스테인리스 전기포트 / 가격: 22,500원
[네이버 스마트스토어 상위 상품 정보]
상품명: 키친플라워 전기포트 1.7L / 가격: 26,300원
상품명: 필립스 전기포트 HD9350 / 가격: 41,800원
상품명: 리빙웰 전기포트 1.8L / 가격: 22,900원
실험을 마치며 – 자동화의 힘
이번 실험은 단순히 가격을 비교하는 것을 넘어, 자동화 기술이 일상 속 선택을 얼마나 스마트하게 바꿔줄 수 있는지를 보여준 좋은 예였습니다. 파이썬과 셀레니움만으로도 충분히 실생활에 유용한 도구를 만들 수 있으며, 데이터 수집, 가공, 분석의 전 과정을 자동화하여 반복 작업의 시간을 아끼는 것은 물론, 의사결정을 더 똑똑하게 만드는 기반이 됩니다.
앞으로도 AutoT 블로그에서는 다양한 실험을 통해 자동화 기술의 실용적인 활용 방안을 지속적으로 탐구해 나갈 예정입니다. 여러분도 일상에서 어떤 부분을 자동화해보고 싶은지 떠올려보세요.