Когда вы открываете https://web.telegram.org
вручную, используя Firefox , используется Профиль Firefox по умолчанию .Когда вы входите в систему и просматриваете веб-сайт, веб-сайты хранят куки-файлы аутентификации в вашей системе.Поскольку файлы cookie сохраняются в локальном хранилище профиля Firefox по умолчанию даже при повторном открытии браузеров, вы автоматически аутентифицируетесь.
Но когда GeckoDriver инициирует новый сеанс просмотра веб-страниц для ваших тестов каждый раз, когда при запуске Firefox создается временный новый mozprofile *1019*, что видно из следующего журнала:
mozrunner::runner INFO Running command: "C:\\Program Files\\Mozilla Firefox\\firefox.exe" "-marionette" "-profile" "C:\\Users\\ATECHM~1\\AppData\\Local\\Temp\\rust_mozprofile.fDJt0BIqNu0n"
Подробное обсуждение можно найти в . Это Firefox или Geckodriver, который создает каталог «rust_mozprofile»
После завершения выполнения теста и quit()
вызывается временный mozprofile удаляется в следующем процессе:
webdriver::server DEBUG -> DELETE /session/f84dbafc-4166-4a08-afd3-79b98bad1470
geckodriver::marionette TRACE -> 37:[0,3,"quit",{"flags":["eForceQuit"]}]
Marionette TRACE 0 -> [0,3,"quit",{"flags":["eForceQuit"]}]
Marionette DEBUG New connections will no longer be accepted
Marionette TRACE 0 <- [1,3,null,{"cause":"shutdown"}]
geckodriver::marionette TRACE <- [1,3,null,{"cause":"shutdown"}]
webdriver::server DEBUG Deleting session
geckodriver::marionette DEBUG Stopping browser process
Итак, когда вы открываете ту же страницу, используя Selenium , GeckoDriver и Firefox файлы cookie, которые были сохранены в локальном хранилище профиля Firefox по умолчанию , недоступны, и, следовательно, вы переадресованына страницу входа .
Для хранения и использования файлов cookie в локальном хранилище для автоматической аутентификации необходимо создать и использовать Пользовательский профиль Firefox .
Здесь вы можете найти соответствующее обсуждение webdriver.FirefoxProfile (): можно ли использовать профиль, не создав его копию?