Python) Selenium IE Driver Pop-up 처리
2021. 2. 1. 16:56ㆍPython
728x90
반응형
회사 인트라넷 페이지 관련하여 개인적으로 Python 으로 프로그램을 만드는 중에
막히는 부분이 생겼는데 바로 '팝업' 이 발생하면 어떻게 처리할 지 막혔었습니다.
해결하는 방법은 Switch_to_alert() 으로 처리할 수 있다고 하여 구글링을 좀 하니까 찾아냈습니다.
우선 '팝업'이 발생하면 엔터처리하는 것 뿐만아니라 발생한 팝업의 문구를 취득하여
예외처리 및 조건문을 작성할 수 있을 것 같아 팝업 내의 텍스트도 가져오는 방법을 찾았습니다.
예를 들어 Selenium으로 자동화를 하는 중
비밀번호를 입력하라는 팝업, 아이디를 입력하라는 팝업, 서버 오류가 있어서 안들어가지는 팝업
등을 문구로 취득을 해 조건문으로 분기를 하면 좋을 것 같은데
생각보다 간단한 방식으로 해결할 수 있었습니다.
try:
result = drv.switch_to_alert()
print(result.text)
except:
"popup : nothing"
위 와같이 drv.switch_to_alert() 을 이용하여 처리를 하게 되는데
팝업의 text를 위 와 같이 출력할 수 있습니다.
'팝업' 을 확인 및 닫기 하는 법
try:
result = drv.switch_to_alert()
print(result.text)
# Alert 창 확인
result.accept()
# Alert 창 닫기
result.dismiss()
except:
"popup : nothing"
728x90
반응형
'Python' 카테고리의 다른 글
원하는 비율로 문자 랜덤생성하기 List [Python] (0) | 2022.03.11 |
---|---|
Python 요일 표시하는 방법 (초간단) (0) | 2022.03.03 |
Selenium 에서 iFrame 처리하는 방법 Python (1) | 2022.02.20 |
해결법 module 'datetime' has no attribute 'strftime' (0) | 2022.02.05 |
Python) compare two image - use Pillow (0) | 2021.01.30 |