如何同时使用 Python 请求验证并获取 cookies

2024-09-30 12:11:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图登录一个网站,一开始我尝试了请求.会话公司名称:

import requests
session=requests.Session()
params={"username":"woniu","password":"password"}
s=session.post(url,params)  
print(s.cookies.get_dict())

但是登录失败,没有cookies返回(我想可能这个网站是HTTP基本的aceess身份验证,我只能使用auth)

然后我尝试使用auth of requests

^{pr2}$

这次登录成功,但仍然没有cookies返回。在

问题是:即使我登录成功,当我试图发布一些东西,我发现自己返回到登录页面。 这是因为我没有处理饼干吗?如何才能成功登录并同时获取cookies。在


Tags: import名称authurl网站sessionusername公司
1条回答
网友
1楼 · 发布于 2024-09-30 12:11:44

如果您确定页面:
1HTTPAuth是否受保护
2需要POST请求

那么这应该有效(测试):

>>> import requests
>>> url = 'http://.../auth'
>>> r = requests.post(url, data={'post_data': '987654321'},
...                   auth=('user123', 'pass456'))
>>> r
<Response [200]>
>>> r.cookies.items()
[('secret_cookie', '987654321')]

注意,POST数据是用data参数提供的,HTTP Auth凭证只是作为元组auth提供的。在

相关问题 更多 >

    热门问题