Как через python авторизоваться на госуслугах?
Есть база, которую необходимо проверить на валидность, но какой запрос get-ом не шлешь, все равно пишет статус 200, не понимаю, почему и где может быть ошибка (проверил лично на своем кабинете, даже когда не правильный пароль ввожу, пишет 200 : OK) Если пишу post-ом то пишет 405 код:
import requests
from requests.auth import HTTPDigestAuth
url = 'https://esia.gosuslugi.ru/login/'
r=requests.get(url, auth=HTTPDigestAuth('тут логин', 'тут пароль'))
print(r.status_code)
Ответы (2 шт):
Автор решения: Abu Suleiman
→ Ссылка
ваш код работает так как и должен работать, вы проверяете статус, в последней строке.
import requests
from requests.auth import HTTPDigestAuth
url = 'https://esia.gosuslugi.ru/login/'
r=requests.get(url, auth=HTTPDigestAuth('тут логин', 'тут пароль'))
=> print(r.status_code)
Пожалуйста поясните, что именно вам нужно сделать
Автор решения: Сергей Ш
→ Ссылка
как пример
import requests
json_data = {
'login': '+7(905)4443311',# по почте '[email protected]'
'idType': 'phone', # по почте 'email'
'password': '4567890',
}
response = requests.post('https://esia.gosuslugi.ru/aas/oauth2/api/login', json=json_data)
if response.json()['status'] == 'error':
print('Неверные логин или пароль')
может потребоватся cookies, headers. Рекомендую вам делать регистрацию и последующие запросы делать в одной сессии. status_code == 200 Означает что пришел ответ от сервера куда посылался запрос. Сам ответ будет в response.json().