首页 > 解决方案 > 如何在 Python 请求模块中使用 cookie?

问题描述

我正在尝试执行获取请求并从中保存cookie并将其用于发布请求。我用这段代码试过:

s = requests.Session()
resp = s.get(url1)
resp2 = requests.post(url2, data=payload, headers=headers, cookies=s.cookies)

但我无法让它正常工作。发布请求不会与获取请求具有相同的 cookie。

难道我做错了什么?

标签: pythoncookiespython-requestsrequest

解决方案


您已经在使用Session(),其全部目的是为您省去处理 cookie 的麻烦。它已经存储了从服务器获取的 cookie,并在后续请求中自动发送/更新它们。

这是你应该如何做的:

s = requests.Session()
resp = s.get(url1)
resp2 = s.post(url2, data=payload, headers=headers)

推荐阅读