我正在尝试登录网站,并根据提供的REST API指南,我将能够收到一些应用程序的数据。
我要求制定的两个步骤是: 1.发送HTTP post命令进行身份验证。 2.发送GET命令以接收数据。
当我使用python请求发送post命令时,我收到显示我的登录权限的所需json响应。例如角色管理员。
但是,当我执行get命令后,它不会检索数据,而是发送一个HTML表单,显示我需要身份验证,即使我已经过身份验证。
有没有人遇到过这个问题,我将如何解决?
我正在为客户处理此问题,因此无法发布我正在使用的实际登录名和网址,因此将使用我将显示的代码替换为我的名字。
答案 0 :(得分:-1)
您可以查看请求库中的会话对象。它用于在多个请求之间保持会话。 http://docs.python-requests.org/en/master/user/advanced/#session-objects
import requests
s = requests.Session()
s.get('http://httpbin.org/cookies/set?authcookie=123')
r = s.get('http://httpbin.org/cookies')
print(r.text)
这是一个示例,它使用请求会话对象来调用设置cookie的URL,然后使用相同的会话(包括cookie)进行另一次调用。只是使用http://httpbin.org/的一些基本示例。