반응형

selenium 이용시 Alert을 제어하는 방법


selenium으로 크롤링 진행하다보면 Alert을 제어해야 하는 경우가 있다.

( Alert이 떴을 때 제어하지 않고 작업을 진행하면 UnexpectedAlertPresentException 이 발생 )


3가지 타입의 Alert 제어 하는 방법을 알아보자


[ 3가지 타입의 Alert ]



1. Alert 창 선택

from selenium import webdriver
from selenium.webdriver.common.alert import Alert

URL = '진입할 주소'

driver = webdriver.Chrome('chromedriver.exe')
driver.get(URL)

da = Alert(driver) 

# 코드 해석

 - 2. Alert import

 - 9. da에 Alert 객체 할당



2. Alert 기본 제어

# 확인을 누른다.
da.accept()

# 창을 닫는다.
da.dismiss()

# 창의 text를 얻어온다.
da.text

# 코드 해석

 - 주석 참고



3. Prompt 제어

 - Alert, Confirm은 확인과 취소만 하면 되지만 Prompt는 값을 입력해주어야 한다.

 값 입력 방법은 아래와 같다. 입력한 값이 화면에 보이지는 않지만 정상적으로 입력이 된다.

# 값 입력 함수
da.send_keys('prompt에 값을 입력')

# 코드 해석

 - 주석 참고


이상 Alert 제어하는 간단한 방법 설명을 마친다.


[ 관련 글 보기 ]

2018/02/11 - [Python] - [파이썬 크롤링] selenium을 이용해 크롤링하기1 (크롬 실행)

2018/02/11 - [Python] - [파이썬 크롤링] selenium을 이용해 크롤링하기2 (데이터 가져오기)

2018/02/12 - [Python] - [파이썬 크롤링] selenium을 이용해 크롤링하기3 (자바스크립트 사용)






Posted by NULL..
,