기본적인 Selenium 메서드와 활용법
이번 수업에서는 Selenium에서 자주 사용되는 몇 가지 핵심 메서드를 살펴보겠습니다.
웹 페이지
Selenium에서 get
메서드는 특정 URL로 이동하는 가장 기본적인 메서드입니다.
브라우저 주소창에 URL을 입력하고 엔터를 누르는 것과 같은 동작을 수행합니다.
웹 페이지 열기 예시
from selenium import webdriver
# Chrome 웹 드라이버 생성
driver = webdriver.Chrome()
# 특정 URL로 이동
driver.get("https://www.example.com")
# 페이지 타이틀 출력
print(driver.title)
특정 요소를 찾는 find_element
웹 페이지에서 특정 HTML 요소를 찾을 때는 find_element
메서드를 사용합니다.
예를 들어 HTML 요소의 ID, 클래스 이름, HTML 태그 이름, XPath 등을 활용해 특정 HTML 요소를 찾을 수 있습니다.
참고: XPath는 특정 요소나 속성을 선택하는 데 사용하는 경로 표현 언어입니다. 예를 들어
//h1
는 페이지 내 모든 h1 요소를,//button[@id='exampleId']
는 ID가exampleId
인 button 요소를 찾습니다.
웹 요소 찾기 예시
# ID로 요소 찾기
# find_element("id", "요소 ID")
element = driver.find_element("id", "exampleId")
# 클래스 이름으로 요소 찾기
# find_element("class name", "클래스 이름")
element = driver.find_element("class name", "exampleClass")
# HTML 태그 이름으로 요소 찾기
# find_element("tag name", "HTML 태그 이름")
element = driver.find_element("tag name", "button")
# XPath로 요소 찾기
# find_element("xpath", "XPath 표현식")
element = driver.find_element("xpath", "//button[@id='exampleId']")
Selenium에서 제공하는 By
클래스를 사용하면 더 간결하게 요소를 찾을 수 있습니다.
By 클래스를 사용한 요소 찾기 예시
from selenium.webdriver.common.by import By
# ID로 요소 찾기
element = driver.find_element(By.ID, "exampleId")
# 클래스 이름으로 요소 찾기
element = driver.find_element(By.CLASS_NAME, "exampleClass")
# 태그 이름으로 요소 찾기
element = driver.find_element(By.TAG_NAME, "button")
# XPath로 요소 찾기
element = driver.find_element(By.XPATH, "//button[@id='exampleId']")
선택한 요소에서 텍스트를 추출하려면 text
속성을 사용합니다.
요소의 텍스트 추출 예시
# 요소의 텍스트 추출
element_text = element.text
# 추출한 텍스트 출력
print(element_text)
HTML 요소를 클릭하는 click
웹 페이지에서 특정 HTML 요소를 클릭할 때는 click
메서드를 사용합니다.
버튼 클릭 예시
# 찾은 요소 클릭
element.click()
예를 들어 로그인 버튼을 자동으로 클릭하거나 특정 링크를 따라가는 작업을 Selenium으로 처리할 수 있습니다.