반응형
코드
# 네이버 상품 가져오기
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import bs4
import pandas as pd
t_list = []
n_list = []
r_list = []
p_list = []
keyword = "감귤"
driver = webdriver.Chrome(r'C:\Users\Yang\Desktop\chromedriver.exe')
driver.get('https://search.shopping.naver.com/search/all.nhn?where=all&frm=NVSCTAB&query={}'.format(keyword))
item_source = bs4.BeautifulSoup(driver.page_source, 'lxml')
item_list = item_source.find_all('div', class_='info')
for item in item_list[4:]:
title = item.find('a').text.replace('\n', '')
price = item.find('span', class_='num').text
if item.find_all('a', class_='graph'):
review = item.find_all('a', class_='graph')[0].text
if len(item.find_all('a', class_='graph')) == 2:
buy_num = item.find_all('a', class_='graph')[1].text
else:
buy_num = '없음'
t_list.append(title)
p_list.append(price)
r_list.append(review.replace('리뷰',''))
n_list.append(buy_num.replace('구매건수',''))
pd.DataFrame({'상품명':t_list, '가격':p_list, '리뷰수':r_list, '구매건수':n_list})
최근 네이버 스토어가 날이 갈수록 인기가 많아지는 것 같습니다. 이번 웹 크롤러는 셀레니움을 활용해, 원하는 품목에 대한 정보를 가공하여 데이터를 크롤링하도록 하였습니다. 우선 셀레니움에 대해 모르시는 분이 있다면, 다른 분들의 포스팅이나 저의 다른 포스팅들을 참조해주세요.
이번에는 감귤에 대한 네이버 스토어 정보들을 가져오도록 해보겠습니다. 다른 항목을 원하신다면, 키워드 등을 수정하신다면, 충분히 활용할 수 있습니다.
결과
위와 같이 네이버 스토어에 대한 정보들을 크롤링하여, 판다스에 저장하였습니다. 이러한 방식을 활용하면, 다양한 스토어에 있는 아이템 가격과 제목, 리뷰와 같은 정보들을 알 수 있습니다.
반응형
'SW > Python' 카테고리의 다른 글
데이터 시각화 : Seaborn : 개념, 사용법, 예제 (1) | 2019.10.20 |
---|---|
python : MK 부동산 입주 캘리던 크롤링 쉽게 하는 방법 (0) | 2019.10.19 |
python : matplotlib : 한글 깨짐 현상 고치는 방법 (0) | 2019.10.17 |
파이썬 : 스타벅스 서울 전체 지점 주소 크롤링하기 (0) | 2019.10.16 |
파이썬 : 네이버 실시간 검색어로 다음 뉴스 검색 자동화 프로그램 (0) | 2019.10.15 |