Программа Python управляет Firefox через Selenium WebDriver. Код встроен в блок try
/except
следующим образом:
session = selenium.webdriver.Firefox(firefox_profile)
try:
# do stuff
except (Exception, KeyboardInterrupt) as exception:
logging.info("Caught exception.")
traceback.print_exc(file=sys.stdout)
Если программа прерывается из-за ошибки, сеанс WebDriver не закрывается, и поэтому окно Firefox остается открытым. Но если программа прерывается с исключением KeyboardInterrupt
, окно Firefox закрывается (я полагаю, потому что сеансы WebDriver также выпущены), и я хотел бы избежать этого.
Я знаю, что оба исключения проходят через один и тот же обработчик, потому что я вижу сообщение "Caught exception"
в обоих случаях.
Как я мог избежать закрытия окна Firefox с помощью KeyboardInterrupt
?