from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
browser = webdriver.Chrome("./chromedriver 2")
browser.maximize_window() #창 최대화
url = "https://flight.naver.com/flights/"
browser.get(url) # url 이동
# 가는날 선택 클릭
browser.find_element_by_link_text("가는날 선택").click()
# 이번달 27일, 28일 선택
# browser.find_elements_by_link_text("27")[0].click() #[0] 이번달
# browser.find_elements_by_link_text("28")[0].click() #[0] 이번달
# 다음달 27일, 28일 선택
# browser.find_elements_by_link_text("27")[1].click() #[1] 다음달
# browser.find_elements_by_link_text("28")[1].click() #[1] 다음달
# 이번달 27일, 다음달 28일 선택
browser.find_elements_by_link_text("27")[0].click() #[0] 이번달
browser.find_elements_by_link_text("28")[1].click() #[1] 다음달
#제주도 선택
browser.find_element_by_xpath("//*[@id='recommendationList']/ul/li[1]").click()
#항공권 검색 클릭
browser.find_element_by_link_text("항공권 검색").click()
# WebDriverWait를 통해 browser를 최대 10초동안 기다리게한다. 10초안에 EC는 어떤조건 XPATH에 해당하는 값이 위치할떄까지 기다리라는 의미
try:
elem = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.XPATH, "//[@id='content']/div[2]/div/div[4]/ul/li[1]")))
# 성공했을때 동작 수행
print(elem.text)
finally:
browser.quit()
# 첫번째 결과 출력
# elem = browser.find_element_by_xpath("//*[@id='content']/div[2]/div/div[4]/ul/li[1]")
# print(elem.text)
'내마음대로만들어보자 > 크롤링' 카테고리의 다른 글
특정 시간동안 계속해서 scroll down 하기 (0) | 2021.06.11 |
---|---|
Selenium / BeautifulSoup- 만개의레시피 (무한스크롤, 특정값 가져오기) (0) | 2021.06.11 |
Selenium / BeautifulSoup- 구글무비 (무한스크롤, 특정값 가져오기) (0) | 2021.06.09 |
Selenium 무한 스크롤 (0) | 2021.06.08 |