使用Python请求来维护会话

时间:2018-03-01 15:37:18

标签: python-3.x python-requests

我正在尝试登录网站,并根据提供的REST API指南,我将能够收到一些应用程序的数据。

我要求制定的两个步骤是: 1.发送HTTP post命令进行身份验证。 2.发送GET命令以接收数据。

当我使用python请求发送post命令时,我收到显示我的登录权限的所需json响应。例如角色管理员。

但是,当我执行get命令后,它不会检索数据,而是发送一个HTML表单,显示我需要身份验证,即使我已经过身份验证。

有没有人遇到过这个问题,我将如何解决?

我正在为客户处理此问题,因此无法发布我正在使用的实际登录名和网址,因此将使用我将显示的代码替换为我的名字。

由于 enter image description here

1 个答案:

答案 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/的一些基本示例。