Могу ошибаться, но вроде проблема решена. На данный момент уже проверено 900 комбинаций.
Моя задача - пройти авторизацию на тестовом сервере. При разрыве соединения появлялась ошибка с соотвествующим текстом. Помимо этого, если бы была сгенерирована комбинация, открывающая доступ к сайту, то DOM бы изменился и пропала возможность обратиться по XPath к кнопке из предыдущего окна. В итоге, при корректной комбинации логин\пароль - создается ошибка невозможности обращения к элементу по указанному пути.
Таким образом, у нас две ошибки, одна из которых говорит об успешном поиске пары логин\пароль, а другая о разрыве соединения. Стоит заметить, что после можно снова подключиться к серверу после перезагрузки браузера.
Для решения этой проблемы написал код, который при разрыве соединения со стороны сервера перезапускается браузер и перебор продолжается, а при нахождении корректной комбинации логин\пароль, выражающейся сменой адреса в адресной строке, - программа завершается:
try:
driver.find_element_by_xpath("//div[@class='nameId']/div[@sbisname='simpleDialogOk']/div").click();
except Exception:
if (driver.current_url != "<адрес сайта>"):
print ("Password found: " + str(j));
driver.quit();
else:
driver.quit();
driver = webdriver.Firefox()
driver.get("адрес сайта")
#В качестве предосторожности разрываю соединение каждые 300 комбинаций
#j - рассматриваемая комбинация пароля
if j%300 == 0 & j!=0:
driver.quit();
driver = webdriver.Firefox()
driver.get("<адрес сайта>")