본문 바로가기
Programming

네이버 지식쇼핑 파싱하기 : 아이템 가격정보, 이미지 링크 등

by 막이 2015. 6. 4.
네이버에서 자체적으로 제공도해줌.
http://developer.naver.com/wiki/pages/Tutorial_Shop_php


#-*- coding: utf-8 -*-
import requests
import bs4
 
NAVER_SHOPPING_URL = "http://shopping.naver.com/search/all_search.nhn"
data = requests.get(NAVER_SHOPPING_URL,
params={
'query': '또봇'
# 여기에 추후에 가격정보나 다른 파라미터 추가
})
 
bs_data = bs4.BeautifulSoup(data.text)
 
# first_price = bs_data.findAll("span", attrs={'class': ['num', 'price_reload']})
# print(first_price[0])
# 이 경우에 숫자들이 전부 출력되는 문제가 발생한다.
# 정성적으로 접근해서 차근차근 풀어가보자.
 
"""
# 이건 첫번째 아이템 뿐만 아니라,
# 모든 아이템에 대한 정보를 가지고 온다.
items = bs_data.find_all("li", attrs={'class': '_model_list'})
for item in items:
price_span = item.find("span", attrs={'class': 'price'})
min_price = price_span.find("span",
attrs={
'class': ['num', 'price_reload']
}).text
print(min_price)
"""
 
item = bs_data.find("li", attrs={'class': '_model_list'})
price_span = item.find("span", attrs={'class': 'price'})
min_price = price_span.find("span",
attrs={
'class': ['num', 'price_reload']
}).text
print(min_price)
 
image_url = bs_data.find("img", attrs={'class': '_productLazyImg'})["src"] .split("?")[0]
print(image_url)