파이썬 셀레니움 경고창 alert 처리하기 닫기 확인

우리는 웹사이트를 이용하다 보면 경고창 Alert를 볼 수 있습니다. 만약 내가 원하는 자동화를 만들고 싶은데 이러한 경고창이 뜨게 되면 에러가 발생하면서 더 이상 진행이 불가능하게 됩니다. 파이썬 셀레니움을 이용하면 이 경고창 alert를 처리할 수 있습니다.

 

셀레니움-경고창

 

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

먼저 경고창처리를 위해서는 WebDriverWait,와 expected_conditions을 같이 사용해 주는 것이 좋습니다. 경고창이 발생했다는 건 이전에 액션이 발생했기 때문에 Alert이 나오게 된것입니다. 따라서 경고 창이 있는지를 체크 후 닫아 주는 형태가 되면 좋습니다.

 

 try:
        WebDriverWait(browser, 3).until(EC.alert_is_present())
        alert = browser.switch_to.alert
        
        # 취소하기(닫기)
        alert.dismiss()
        
        # 확인하기
        alert.accept()
 except:
        print("no alert")

WebDriverWait를 이용해서 경고 창이 발생했는지를 먼저 확인합니다. 여기에 조건은 EC.alert_is_present()입니다. 만약 경고창이 있다면 switch_to.alert를 이용하여 경고창을 가져올 수 있습니다. 이후 .dismiss(), .accept()를 통해서 경고창을 처리하면 됩니다.

 

[공부/Python] - Python Selenium 파이썬 셀레니움 새 시크릿창, 사생활 보호 창

 

Python Selenium 파이썬 셀레니움 새 시크릿창, 사생활 보호 창

일반적으로 기록을 남기지 않기 위해서 시크릿모드를 사용하곤 합니다. 자동화 기능을 만들때에도 혹시 모르니 시크릿모드로 실행을 시켜 줍시다. 파이썬 셀레니움에서 크롬, 파이어폭스 사용

minmong.tistory.com

[공부/Python] - 파이썬 셀레니움 Python selenium 팝업창 닫기

 

파이썬 셀레니움 Python selenium 팝업창 닫기

셀레니움을 이용해서 웹브라우저 자동화를 만들때에 예상치 못합 팝업창이 떠서 내가 생각한 자동화 로직이 깨질때가 있습니다. 이럴 때는 팝업창을 감지해서 팝업창을 닫아줘야 합니다. 요즘

minmong.tistory.com

 

그리드형(광고전용)

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band

댓글

Designed by JB FACTORY