在python

时间:2019-06-23 13:17:12

标签: python-3.x python-requests

我正在使用请求库在python中执行POST请求,然后在4个响应头中获取多个set-cookie,在后续请求中,只有2个作为cookie发送。

response = session.request("POST", url1, data=payload1, headers=headers1,verify=False,cookies=previous_response.cookies)

如上所述,当我发送请求时,必须将先前请求标头中的所有已设置cookie都设置为cookie,但其中只有少数设置了

例如

Set-Cookie: sp_ac=AQB1uO6eg3fKauhLNID7uLdT9wuD_9Qy-FtXYhfl68sGO4YkUL2tKpY_EXlV_SKvngDccQOI5BaKSdycCA5U-7h1N5LQ7HH5wjQbGXSB6o7pcKBvhRXsBne4zHSSFsdExwBQ0m_AwVo9d8UjkfUXiGtStI8vvF-p9ZJctNSrqf14DFh1juqZpK3cV_AplvJDVGgZEnALUa6JrBQJLZLXrUnDM4aBvPT9qNc;Version=1;Domain=accounts.spotify.com;Path=/;Secure;HttpOnly
Set-Cookie: sp_dc=AQDCboRdqnDFFtXA8px3gqjA3UkFXu5ikby1DsKg6D3v3LkholwIGSZizDHnSGuFHieuTsitpr8ubYApjQRaH2asYAuQGdzJ69zuzjPU8g;Version=1;Domain=spotify.com;Path=/;Max-Age=31536000;Secure;HttpOnly;Expires=Mon, 22 Jun 2020 13:03:15 GMT
Set-Cookie: csrf_token=AQB0q1XS7kZ5saul8QVL-7NIZVqrrAeeXW5OQUzjys8SQXTLUBf9M2wNOOQeyGU2cB-assn4XKqB9vRx;Version=1;Domain=accounts.spotify.com;Path=/;Secure
Set-Cookie: sp_key=59071bcb-664c-4302-b98b-6ba15d54f605;Version=1;Domain=spotify.com;Path=/;Max-Age=31536000;Secure;Expires=Mon, 22 Jun 2020 13:03:15 GMT

这些是我以前的响应标题

在我的下一个请求中,仅发送了2个,我不知道其背后的原因以及如何解决

Cookie: sp_dc=AQDCboRdqnDFFtXA8px3gqjA3UkFXu5ikby1DsKg6D3v3LkholwIGSZizDHnSGuFHieuTsitpr8ubYApjQRaH2asYAuQGdzJ69zuzjPU8g; sp_key=59071bcb-664c-4302-b98b-6ba15d54f605

这是我在新请求中的新Cookie头

1 个答案:

答案 0 :(得分:0)

如果研究主机似乎不同,那么我想出了很多答案

所以我要做的是在帖子中发个小通知

代替此

response = session.request("POST", url1, data=payload1, headers=headers1,verify=False,cookies=previous_response.cookies)

我将cookie更改为dict,以便使其独立于主机,如下所示:

response = session.request("POST", url1, data=payload1, headers=headers1,verify=False,cookies=previous_response.cookies.get_dict())