
1. import library
from selenium import webdriver as wb
from selenium.webdriver.common.by import By
#키보드 값을 제공하는 라이버러리
from selenium.webdriver.common.keys import Keys
#실행 시간을 딜레이주는 라이브러리
import time
import requests as req
from bs4 import BeautifulSoup as bs
import pandas as pd
2. Get url
gm_url = 'https://www.gmarket.co.kr/n/best'
driver = wb.Chrome()
driver.get(gm_url)
3. data collect
titles = [] # 상품명을 담아줄 리스트
prices = [] # 가격을 담아줄 리스트
for i in range(1,13) : # li태그의 group 개수가 12개! 그래서 1~12까지 group{} 포매팅 지정
# CSS 선택자를 활용하여 카테고리 group 요소 가져오기
item = driver.find_element(By.CSS_SELECTOR,f"#categoryTabG > li.group{i}")
item.click()
time.sleep(1) # 화면이 움직이는 시간이므로, 1초 stop!
# group마다 상품들의 개수가 다를 수 있음!
# 각각의 길이를 담아줄거임
length = len(driver.find_elements(By.CSS_SELECTOR,"a.itemname"))
# 각각의 title과 price를 담아 처음 생성해두었던 title과 price를 담자!
for j in range(length) :
title = driver.find_elements(By.CSS_SELECTOR,"a.itemname")[j].text
price = driver.find_elements(By.CSS_SELECTOR,"div.s-price > strong > span")[j].text
titles.append(title)
prices.append(price)
driver.close()