Как пройти авторизацию через ЕСИА на python?

Есть скрипт на python, при помощи которого делалась выгрузка dbf-файла с данными (длится около 20 минут, но это не влияет на суть вопроса). Раньше все делалось при помощи библиотеки requests, но недавно сайт на котором проводилась выгрузка сменил схему авторизации. Если раньше вход шел по логин/паролю, то теперь авторизация проводится через ЕСИА (Портал ГосУслуг) и дальнейший выбор прикрепленного старого логина.
К сожалению я не смог найти способа, как при помощи библиотеки requests пройти авторизацию и продолжить работу скрипта. Библиотеки BeuatifulSoup, Mechanize мне тоже не помогли. В Интернете информация о противоположной задаче, т.е. как прикрутить авторизацию через ЕСИА к чему-то. В данный момент я вышел из ситуации при помощи библиотеки Selenium.
Но:
  1. Усложняется контроль, т.к. запускается браузер в графической среде, больше возможных ошибок
  2. Графическая среда требует больше ресурсов
  3. Из-за отсутствия графики на сервере и отказа работать geckodriver-а на FreeBSD скрипт переехал на другую машину, где в постоянном режиме запущен графический сеанс. Добавилась еще одна точка отказа. Перенести проект на Django на эту машину не представляю возможным, много чего еще придется переносить, на сервере еще проект на zotonic и веб-интерфейс zabbix

Собственно вопрос: может все-таки существует более простой способ авторизации через ЕСИА и не стоит так извращаться?
  • Вопрос задан
  • 1232 просмотра
Пригласить эксперта
Ответы на вопрос 1
DexterHD
@DexterHD
Software Engineer, Teamlead, CTO
http://minsvyaz.ru/common/upload/metod[1].pdf

Этот документ должен помочь, там есть вся необходимая информация о интеграции с ЕСИА.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы