본문 바로가기
Python/Selenium

selenium.select로 드롭다운 목록에서 값 선택하기

by PySun 2025. 2. 20.
반응형

Selenium을 활용한 드롭다운 목록에서 값 선택하기

웹 자동화의 강력한 도구인 Selenium을 통해 드롭다운 목록에서 원하는 값을 선택할 수 있습니다. 이 포스팅에서는 selenium.webdriver.support.ui.Select 클래스를 사용하여 드롭다운 목록에서 특정 값을 선택하는 방법에 대해 자세히 설명합니다.

Selenium Select 클래스 소개

Select 클래스는 HTML의 select 태그와 연동되어 드롭다운 목록을 쉽게 다뤄줍니다. 이를 통해 사용자는 다양한 방법으로 드롭다운 항목을 선택할 수 있습니다.

클래스 시그니처

from selenium.webdriver.support.ui import Select

매개변수:

  • webdriver: Selenium WebDriver 객체입니다.
  • Select 객체 instantiation: 선택할 select 태그(WebElement)입니다.

사용 가능한 선택 방법:

  • select_by_visible_text(text): 표시된 텍스트로 선택
  • select_by_value(value): value 속성으로 선택
  • select_by_index(index): 인덱스 위치로 선택

사용 예제

기본 예제

다음은 Selenium을 사용하여 드롭다운 목록에서 특정 값을 선택하는 기본 예제입니다.

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time

# WebDriver 시작
driver = webdriver.Chrome()

# 특정 웹 페이지 열기
driver.get('http://example.com/dropdown')

# 드롭다운 요소 찾기
dropdown = driver.find_element_by_id('dropdown_id')

# Select 객체 생성
select = Select(dropdown)

# 표시된 텍스트로 값 선택
select.select_by_visible_text('선택할 값')

# 잠시 대기 후 종료
time.sleep(5)
driver.quit()

다양한 선택 방법 예제

아래 예제에서는 드롭다운 목록에서 다른 방법으로 값을 선택합니다.

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time

# WebDriver 시작
driver = webdriver.Chrome()

# 특정 웹 페이지 열기
driver.get('http://example.com/dropdown')

# 드롭다운 요소 찾기
dropdown = driver.find_element_by_id('dropdown_id')

# Select 객체 생성
select = Select(dropdown)

# value로 값 선택
select.select_by_value('value_attribute')

# 인덱스로 값 선택
select.select_by_index(2)  # 인덱스는 0부터 시작

# 잠시 대기 후 종료
time.sleep(5)
driver.quit()

결론

Selenium의 Select 클래스를 활용하면 드롭다운 목록에서 간편하게 원하는 값을 선택할 수 있습니다. 다양한 방법으로 요소를 선택함으로써 웹 자동화의 효율성을 극대화할 수 있습니다.

  • select_by_visible_text, select_by_value, select_by_index를 적절히 조합하여 최적의 자동화 작업을 수행해 보세요!
  • 지금 바로 Selenium으로 웹 자동화를 시작해 보세요!
반응형