如何使用python请求在同一连接中发送多个post请求

时间:2015-06-01 12:04:11

标签: python http http-post python-requests

为了在我的网站中自动注册用户,我正在使用

>>> r = requests.post('http://www.dakshnetworks.com:8888/accounts/signup/', data=payload)

这很好用。但是一旦用户注册,我就会将他引导到另一个他必须设置工作场所的页面。所以我试着用

 o= requests.post('http://www.dakshnetworks.com:8888/set/', data=payload2)

但是无法设置用户的工作区返回错误500

[01/Jun/2015 17:11:07] "POST /accounts/signup/ HTTP/1.1" 302 0
[01/Jun/2015 17:11:07] "GET / HTTP/1.1" 302 0
[01/Jun/2015 17:11:07] "GET /set/ HTTP/1.1" 200 26351
[01/Jun/2015 17:14:40] "POST /set HTTP/1.1" 500 75469
[01/Jun/2015 17:16:16] "POST /set/ HTTP/1.1" 500 126509

那么我如何维护连接,以便服务器可以知道请求来自同一个用户。

1 个答案:

答案 0 :(得分:1)

使用Session() object维护Cookie,以便服务器知道它仍然是同一个用户:

session = requests.Session()
r = session.post('http://www.dakshnetworks.com:8888/accounts/signup/', data=payload)
o = session.post('http://www.dakshnetworks.com:8888/set/', data=payload2)