Python запрашивает модуль после возврата код ошибки 500 ошибка - PullRequest
0 голосов
/ 27 февраля 2019

Я хочу войти в свой университетский портал с модулем запроса.

import requests
r = requests.post("https://sabis.sakarya.edu.tr/tr/Login", data={"userName":"1111","Password":"xxx"})
print(r.status_code)

, но код r.status_code возвращает 500. Где я ошибаюсь?

Ответы [ 5 ]

0 голосов
/ 27 февраля 2019
import requests
import re

url = "https://sabis.sakarya.edu.tr/tr/Login"

r1 = requests.get(url, verify=False)
__RequestVerificationToken = re.compile(
    r'input name="__RequestVerificationToken" type="hidden" value="(\S*?)"').findall(r1.text)[0]
print(__RequestVerificationToken)
data = {
    "userName": "1111", "Password": "xxx",
    '__RequestVerificationToken': __RequestVerificationToken,
    'ReturnURL': '',
    'RememberMe': 'false'
}
r2 = requests.post(url=url, data=data, verify=False)
print(r2.status_code)

# Протестировать, и как использовать кодовый блок в комментарии?

0 голосов
/ 27 февраля 2019

Может быть, в вашем сообщении отсутствует информация, например.в данных публикации есть другие поля, или вы должны установить заголовок в методе публикации.

0 голосов
/ 27 февраля 2019

Вам нужно сначала получить страницу, чтобы получить значение «__RequestVerificationToken» в источнике страницы, а затем публиковать в этом поле.

0 голосов
/ 27 февраля 2019

вам нужен токен аутентификации, чтобы это работало.возможно, в вашем университете есть документация по API, где вы можете узнать, как получить этот токен.и даже как правильно сделать почтовый запрос, используя их API.enter image description here

0 голосов
/ 27 февраля 2019

Если r.status_code возвращает 500 код состояния, тогда ваш фрагмент в порядке.Проблема со стороны сервер .Потому что 5XX проблемы рассматриваются как внутренние проблемы сервера

...