반응형
하이어시스템 소개
셀레니움으로 자동화프로그램을 개발할 때 자동화가 종료되면 크롬 웹드라이버를 종료처리를 해야 합니다. 정상적으로 종료처리를 하지 않는다면 다음 자동화 실행시점에 충돌이 발생하여 정상적인 진행이 불가능하게 됩니다.
셀레니움 웹드라이버를 이용하여 윈도우 화면을 닫는 방법은 2가지 입니다.
close
from selenium import webdriver
# 웹 드라이버 인스턴스 생성
driver = webdriver.Chrome()
# 웹 드라이버를 사용한 작업 수행
# 현재 창 닫기
driver.close()
# 다른 작업을 위해 웹 드라이버 인스턴스를 계속 사용 가능
'close' 메서드는 현재 열려 있는 창을 닫습니다. 하지만 다른 탭이나 다른 브라우저 창이 열려 있으면 웹 드라이버 프로세스는 종료되지 않고 계속 실행됩니다. 따라서, 'close' 메서드를 호출한 후에도 동일한 드라이버 인스턴스를 사용하여 다른 작업을 계속할 수 있습니다. 예를 들면 특정 링크를 클릭하면 새로운 탭 화면이 열리면서 자동화 대상이 변경되는 경우입니다. 이런 경우라면 기존 탭을 close()로 닫아주고 웹드라이버의 switch_to.window() 메서드를 이용해서 자동화 대상 화면을 전환해야 합니다.
quit
from selenium import webdriver
# 웹 드라이버 인스턴스 생성
driver = webdriver.Chrome()
# 웹 드라이버를 사용한 작업 수행
# 웹 드라이버 종료
driver.quit()
'quit' 메서드는 웹 드라이버의 인스턴스를 완전히 종료합니다. 이 메서드를 호출하면 웹 브라우저의 모든 창과 탭이 닫히고, 드라이버 프로세스도 완전히 종료됩니다. 이후에는 더 이상 웹 드라이버를 사용할 수 없습니다. 따라서 자동화 프로세스가 종료된 경우라면 quit 으로 완전히 웹 드라이버를 종료해야 합니다.
반응형
'파이썬코드공유' 카테고리의 다른 글
셀레니움 find_element XPath 완벽 해설 (0) | 2023.08.04 |
---|---|
Selenium Waits Explicit Implicit 명시적대기 암묵적대기 (0) | 2023.08.04 |
셀레니움 selenium 매크로 탐지 회피 전략 (0) | 2023.08.04 |
Tkinter Background Task 백그라운드 작업 (0) | 2023.08.03 |
Tkinter layout methods 위젯 배치방법 (0) | 2023.08.03 |