본문 바로가기
Python/Selenium

selenium.webdriver.find_elements_by_xpath로 여러 요소 찾기

by PySun 2025. 1. 23.
반응형

Selenium WebDriver의 find_elements_by_xpath: 여러 요소 찾기

웹 자동화의 세계에서 Selenium WebDriver는 언급할 수 없는 마법 같은 도구입니다. 그 중에서도 find_elements_by_xpath는 웹 페이지의 특정 요소를 찾는 데 강력한 무기를 제공합니다. 이 포스팅에서는 find_elements_by_xpath 메서드를 사용하여 여러 요소를 찾는 방법에 대해 다뤄보겠습니다.

find_elements_by_xpath 메서드 소개

find_elements_by_xpath 메서드는 주어진 XPath 식에 해당하는 모든 요소를 반환합니다. 이는 특정 조건을 만족하는 다수의 웹 요소를 간편하게 찾는 데 유용합니다. 예를 들어, 버튼, 링크, 또는 특정 클래스의 요소를 한번에 찾을 수 있습니다.

메서드 시그니처

webdriver.find_elements_by_xpath(xpath_expression)

매개변수:

  • xpath_expression: 찾고자 하는 요소의 XPath 경로입니다.

반환 값:

  • 주어진 XPath에 해당하는 WebElement 객체의 리스트를 반환합니다.

사용 예제

기본 예제

다음은 Selenium WebDriver를 사용하여 웹 페이지에서 여러 요소를 찾는 기본 예제입니다.

from selenium import webdriver
from selenium.webdriver.common.by import By

# WebDriver 초기화
driver = webdriver.Chrome()

# 웹 페이지 열기
driver.get("https://example.com")

# 여러 요소 찾기 (예: 모든 링크)
links = driver.find_elements(By.XPATH, "//a")

for link in links:
    print(link.text)

# WebDriver 종료
driver.quit()

다양한 요소 찾기

XPath를 활용해 다양한 조건의 요소들을 쉽게 찾을 수 있습니다. 아래 예제를 통해 바꿀 수 있습니다.

from selenium import webdriver
from selenium.webdriver.common.by import By

# WebDriver 초기화
driver = webdriver.Chrome()

# 웹 페이지 열기
driver.get("https://example.com")

# 특정 클래스의 모든 요소 찾기
elements = driver.find_elements(By.XPATH, "//*[@class='target-class']")

for element in elements:
    print(element.text)

# WebDriver 종료
driver.quit()

결론

find_elements_by_xpath 메서드는 Selenium WebDriver에서 다수의 웹 요소를 찾을 때 매우 유용합니다. 이를 통해 여러분은 웹 페이지의 정보에 보다 빠르고 효율적으로 접근할 수 있게 됩니다.

  • 연속적인 클릭, 복잡한 데이터 추출 등의 작업을 간소화하세요!
  • 실제 프로젝트에 find_elements_by_xpath의 힘을 경험해 보세요!
반응형