본문 바로가기
Python/Selenium

Selenium.hover_and_click으로 마우스 오버 후 클릭하기

by PySun 2025. 1. 13.
반응형

Selenium의 hover_and_click: 마우스 오버 후 클릭하기

웹 자동화의 매력을 느끼고 계신가요? Selenium 라이브러리를 이용하면 웹 페이지 작업이 간편해지며, 마우스 오버 후 클릭과 같은 세밀한 제어도 가능합니다. 이 포스트에서는 hover_and_click 메소드를 활용하여 마우스를 원하는 요소 위로 이동한 후 클릭하는 방법을 설명합니다.

hover_and_click 함수 소개

우리는 종종 웹사이트와의 상호작용에서 단순히 클릭하는 것 이상의 작업을 수행해야 합니다. hover_and_click 함수는 특정 요소 위에 마우스를 올린 다음 자동으로 클릭을 수행하는 역할을 합니다. 이를 통해 사용자 경험을 시뮬레이션하고 복잡한 웹 요소와 더 잘 상호작용할 수 있습니다.

함수 시그니처

def hover_and_click(driver, element):

매개변수:

  • driver: Selenium WebDriver 객체입니다.
  • element: 마우스 오버 후 클릭할 웹 요소입니다.

반환 값:

  • 클릭 작업이 성공적으로 완료되었음을 나타내는 아무 값도 반환하지 않습니다.

사용 예제

기본 예제

아래는 hover_and_click 함수를 사용하여 특정 버튼을 클릭하는 기본 예제입니다. 이 예제에서는 웹페이지에서 특정 메뉴 항목을 마우스로 오버한 후 클릭합니다.

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
import time

def hover_and_click(driver, element):
    ActionChains(driver).move_to_element(element).click().perform()

# 웹드라이버 설정
driver = webdriver.Chrome()
driver.get("https://example.com")

# 잠시 대기 후 요소 찾기
time.sleep(2)
menu = driver.find_element(By.ID, "menu_element_id")
hover_and_click(driver, menu)

# 나중에 클릭할 서브 메뉴 항목 찾기
submenu = driver.find_element(By.ID, "submenu_element_id")
hover_and_click(driver, submenu)

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

더 복잡한 예제

시간이 지나면서 웹페이지의 구조가 복잡해질 수 있습니다. 다음은 드롭다운 메뉴를 포함한 복잡한 웹 요소에 마우스를 오버하고 클릭하는 방법입니다.

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
import time

def hover_and_click(driver, element):
    ActionChains(driver).move_to_element(element).click().perform()

# 웹드라이버 설정
driver = webdriver.Chrome()
driver.get("https://example.com")

# 상위 메뉴 식별
time.sleep(2)
main_menu = driver.find_element(By.CSS_SELECTOR, ".main-menu")
hover_and_click(driver, main_menu)

# 서브 메뉴 식별
time.sleep(1)
sub_menu = driver.find_element(By.CSS_SELECTOR, ".sub-menu")
hover_and_click(driver, sub_menu)

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

결론

hover_and_click 함수는 Selenium에서 마우스를 오버하고 클릭하는 작업을 통해 웹 애플리케이션과 더 정교하게 상호작용할 수 있도록 도와줍니다. 이 기술을 통해 귀하의 자동화 스크립트를 보다 강력하고 유연하게 만들어 보세요!

  • 이제 hover_and_click 기능을 통해 웹 페이지 내 연속적인 작업을 더욱 간편하게 수행해 보세요!
  • 복잡한 웹 페이지에서도 마우스 오버와 클릭을 통해 필요한 데이터를 수집해 보세요!
반응형