본문 바로가기
Python/Selenium

Selenium: CSS_SELECTOR로 요소 찾기

by PySun 2025. 4. 11.
반응형

Selenium을 이용한 CSS_SELECTOR로 요소 찾기

웹 자동화의 세계에 오신 것을 환영합니다! Selenium은 웹 페이지에서 다양한 동작을 자동화할 수 있는 인기 있는 도구입니다. 이 포스팅에서는 CSS 선택자를 사용하여 요소를 찾는 방법에 대해 알아보겠습니다. 이 방식은 웹 페이지에서 특정 요소를 쉽게 식별하고 조작할 수 있게 해줍니다.

CSS_SELECTOR란?

CSS_SELECTOR는 HTML 요소를 선택하는 데 사용되는 강력한 도구입니다. CSS 선택자는 요소의 태그, 클래스, 아이디, 속성 등을 기반으로 여러 요소를 선택할 수 있도록 해줍니다. Selenium에서는 이러한 선택자를 활용하여 웹 페이지의 다양한 요소를 쉽게 찾을 수 있습니다.

CSS 선택자 사용 형식

driver.find_element_by_css_selector("선택자")

매개변수:

  • 선택자: 찾고자 하는 요소를 지정하는 CSS 선택자입니다.

반환 값:

  • 지정한 CSS 선택자와 일치하는 첫 번째 요소를 반환합니다.

사용 예제

기본 예제

다음 예제에서는 CSS 선택자를 사용하여 특정 버튼 요소를 찾아 클릭하는 방법을 보여줍니다.

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

# 웹 드라이버 실행
driver = webdriver.Chrome()

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

# CSS_SELECTOR로 요소 찾기
button = driver.find_element(By.CSS_SELECTOR, 'button.submit-button')

# 버튼 클릭
button.click()

# 웹 드라이버 종료
driver.quit()

다양한 CSS 선택자 예제

아래는 다양한 CSS 선택자 예제입니다. 이들은 각기 다른 방식으로 HTML 요소를 선택합니다.

# 특정 클래스의 모든 요소 선택
elements = driver.find_elements(By.CSS_SELECTOR, '.example-class')

# 특정 아이디를 가진 요소 선택
element_by_id = driver.find_element(By.CSS_SELECTOR, '#example-id')

# 특정 속성을 가진 요소 선택
element_by_attr = driver.find_element(By.CSS_SELECTOR, 'input[type="text"]')

# 여러 조건을 조합하여 선택
combined_elements = driver.find_elements(By.CSS_SELECTOR, 'div.container > a.link-class')

결론

CSS_SELECTOR를 사용하여 Selenium에서 요소를 찾는 것은 매우 유용하고 효율적인 방법입니다. 웹 페이지의 복잡한 구조에서도 원하는 요소를 쉽게 찾아서 조작할 수 있도록 도와줍니다.

  • CSS_SELECTOR를 활용해 원하는 요소를 자유롭게 선택해 보세요!
  • 지금 Selenium을 통해 웹 자동화의 재미를 느껴보세요!
반응형