์
๋ ๋์ csv ์ค๋ฅ
๋ต๋ณ ๊ฐ์ฌ๋๋ ค์. ๊ทธ๋ฐ๋ฐ ์ ๊ฐ ์ด๋ฏธ ๊ฐ์ ๋ณด๊ณ ๊ธฐ์ฌํ ๊ฑฐ๋ ๋์ผํด์. ํด๊ฒฐํ๊ณ ๋ค์์ผ๋ก ๋์ด๊ฐ๊ณ ์ถ์๋ฐ ๋ ๋ต๋ตํ๋ค์. ํน์ ๋ฌธ์ ๊ฐ ์ด๋์ง ๋ด์ฃผ์ค ์ ์์ผ์ค๊น์? Chrome ๋๋ผ์ด๋ฒ๋ Chrome ์ค์ ์ ๋ณด์ธ 99๋ก ๋ฐ์์ต๋๋ค. ํน์ ์ด๊ฑฐ์ ๋ฐ๋ผ ๋ฌ๋ฆฌ ์ ์ฉํด์ผ ํ๋ ๋ถ๋ถ์ด ์์๊น์? ๋ฐ์์คํ
๋ฐ ๋ถํ๋๋ ค์. from selenium import webdriver from selenium.webdriver.common.keys import Keys import time import csv # ๋ธ๋ผ์ฐ์ ์์ฑ browser = webdriver.Chrome('c:/chromedriver.exe') # ์น์ฌ์ดํธ ์ด๊ธฐ browser.get('https://www.naver.com') browser.implicitly_wait(10) # ๋ก๋ฉ์ด ๋๋ ๋๊น์ง 10์ด๊น์ง๋ ๊ธฐ๋ค๋ ค์ค # ์ผํ๋ฉ๋ด ํด๋ฆญ browser.find_element_by_css_selector('a.nav.shop').click() time.sleep(2) #์
๋ ๋์์ ๋ค์ ์ฌ๋๊ฑธ๋ฆผ # ๊ฒ์์ฐฝ ํด๋ฆญ search=browser.find_element_by_css_selector('input.co_srh_input._input') search.click() # ๊ฒ์์ด ์
๋ ฅ search.send_keys('์์ดํฐ 13') search.send_keys(Keys.ENTER) # ์คํฌ๋กค ์ ๋์ด before_h = browser.execute_script("return window.scrollY") # ๋ฌดํ ์คํฌ๋กค while True: # ๋งจ ์๋๋ก ์คํฌ๋กค์ ๋ด๋ฆฐ๋ค. browser.find_element_by_css_selector("body").send_keys(Keys.END) # ์คํฌ๋กค ์ฌ์ด ํ์ด์ง ๋ก๋ฉ ์๊ฐ time.sleep(1) # ์คํฌ๋กค ํ ๋์ด after_h = browser.execute_script("return window.scrollY") if after_h == before_h: break before_h = after_h # ํ์ผ ์์ฑ f = open(r"C:\startcoding_crawling\03_๋ค์ด๋ฒ_์ผํ_ํฌ๋กค๋ง\data.csv", 'w', encoding='CP949', newline='') csvwriter = csv.writer(f) # ์ํ ์ ๋ณด div items = browser.find_elements_by_css_selector(".basicList_info_area__17Xyo") for item in items: name = item.find_element_by_css_selector(".basicList_title__3P9Q7").text try: price = item.find_element_by_css_selector(".price_num__2WUXn").text except: price = "ํ๋งค์ค๋จ" link = item.find_element_by_css_selector(".basicList_title__3P9Q7 > a").get_attribute('href') print(name, price, link) # ๋ฐ์ดํฐ ์ฐ๊ธฐ csvwriter.writerow([name, price, link]) #ํ์ผ ๋ซ๊ธฐ f.close()