使用 API 请求进行身份验证
Authentication using API Request
我目前正在使用 Request API 编写一个简短的脚本,我需要访问我的电子邮箱以检索一些信息。
所以我写了这段代码来进行身份验证:
#! /usr/bin/python3
import requests
payload = {'horde_user': '',
'horde_pass': '',
'login_post': '1'}
r = requests.post('http://webmail.technion.ac.il/login.php', data=payload)
print(r.status_code)
print(r.text)
显然,我在 payload
词典中用我的用户名替换了 horde_user
,用我的密码替换了 horde_pass
。
但输出的是初始页面的源代码,而我希望它是我邮箱的内容。
状态代码是 200,而它应该是 302。有人可以向我解释我做错了什么吗。
非常感谢您的帮助!
尝试先请求页面,然后从第一个请求中提取会话 ID 以用于登录尝试。我敢打赌它会失败,因为您发送的是旧的会话 ID,而网站拒绝了它们,并将您发送回带有新会话 ID 的登录页面。 cookie 中的会话 ID 为 Horde 和 horde_secret_key。
我目前正在使用 Request API 编写一个简短的脚本,我需要访问我的电子邮箱以检索一些信息。
所以我写了这段代码来进行身份验证:
#! /usr/bin/python3
import requests
payload = {'horde_user': '',
'horde_pass': '',
'login_post': '1'}
r = requests.post('http://webmail.technion.ac.il/login.php', data=payload)
print(r.status_code)
print(r.text)
显然,我在 payload
词典中用我的用户名替换了 horde_user
,用我的密码替换了 horde_pass
。
但输出的是初始页面的源代码,而我希望它是我邮箱的内容。
状态代码是 200,而它应该是 302。有人可以向我解释我做错了什么吗。
非常感谢您的帮助!
尝试先请求页面,然后从第一个请求中提取会话 ID 以用于登录尝试。我敢打赌它会失败,因为您发送的是旧的会话 ID,而网站拒绝了它们,并将您发送回带有新会话 ID 的登录页面。 cookie 中的会话 ID 为 Horde 和 horde_secret_key。