글 개요
이번 포스팅에서는 Selenium에 headless 옵션과 wait사용하는 방법을 알아보려고 합니다.
글 본문
headless옵션
headless옵션은 웹브라우저를 열지않고 크롤링을 진행할 때 사용합니다.
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('headless')
driver.Chrome('driver 경로', options=options)
이렇게 headless옵션을 주고 시작하면, 웹브라우저를 열지않고 크롤링을 할 수 있습니다.
wait
wait은 selenium이 크롤링을 시작할 때 페이지 로딩을 기다리는 옵션입니다. 이와 비슷한게 time이라는 모듈이 있는데 time을 이용하면, 물리적으로 시간을 멈추는 것입니다. wait은 일정 시간동안 로딩을 기다리는 것입니다.
# explicity wait 사용하기 위해 아래 라이브러리가 필요합니다.
frome selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 웹페이지 로딩을 10초간 기달립니다. 즉, 웹페이지가 10초동안 대기하고 10초안에 로딩이 끝나면 다음 코드가 진행됩니다.
driver.implicity_wait(10)
특정 태그로 응용해보기
# explicity wait 사용하기 위해 아래 라이브러리가 필요합니다.
frome selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 웹페이지를 5초동안 기다리고 5초안에 웹페이지 로딩이 끝나면 해당 태그의 동작을 진행합니다.
WebDriverWait(driver, 5).until(EC.presence_of_all_element_located((By.CSS_SELECTOR, "#default_top > div.header-member > button"))).click()
'Python Crawing' 카테고리의 다른 글
Selenium - 기본 문법 이해하기 (3) | 2021.10.12 |
---|---|
Selenium - iframe (0) | 2021.10.12 |
크롤링- 기초문법 활용 네이버 영화 평점 크롤링 (0) | 2021.10.05 |
크롤링 - 기초 문법 (0) | 2021.09.29 |
댓글