身份验证麻烦的Python请求

时间:2014-12-11 17:11:23

标签: python authentication python-requests

我正在尝试使用Python请求克服特定API服务的身份验证挑战。我已经尝试过BasicHTTP和其他默认的auth方法。所以我试图通过表单数据发送用户名和密码。

以下是Chrome DevTools在手动成功登录时显示的内容(如果您需要DevTools提供更多数据,请告诉我们):

Request Method:POST
Status Code:302 Found

Form Data
__LASTFOCUS:
__EVENTTARGET:
__EVENTARGUMENT:
__VIEWSTATE: <hashed stuff>
__VIEWSTATEGENERATOR:7A06DDCB
__SCROLLPOSITIONX:0
__SCROLLPOSITIONY:0
ctl00%24MainContentPlaceHolder%24MainLogin%24UserName:<usernamecleartext>
ctl00%24MainContentPlaceHolder%24MainLogin%24Password:<passwordcleartext>
ctl00%24MainContentPlaceHolder%24MainLogin%24RememberMe:on
ctl00%24MainContentPlaceHolder%24MainLogin%24LoginButton:Log+In+%3E

这是我的代码:

import requests

url='<theloginurl>'

payload = {
    'ctl00$MainContentPlaceHolder$MainLogin$UserName':'<usernamecleartext>',
    'ctl00$MainContentPlaceHolder$MainLogin$Password':'<passwordcleartext>'
}

r = requests.post(url, data=payload)
print(r.url)
print(r)
print(r.headers)

即使我在我的有效负载词典中包含其他两个表单项DevTools报告,结果也是一样。

0 个答案:

没有答案