大佬们,手动设置的cookie为什么请求之后还是空的呢?
大佬们请看情况,这是我顺便弄得百度的一个东西,这和我遇到的爬虫问题类似。我觉得爬虫模拟登录失败,原因就是因为cookie,先请求验证码,然后获取验证码的cookie,把这个cookie加到登录网页中,但是总是登录不上。
所以,我在模拟登陆的时候,打印了一下cookie,发现就是空的,请问大佬们这是为什么啊?
把cookie和headers写一起试试,我喜欢这么干 本帖最后由 luanshils 于 2020-10-5 21:15 编辑
- -,我也是一知半解 要有请求头 试试看会话对象,能够跨请求保持某些参数。
s = requests.Session()
r = s.get('http://httpbin.org/cookies', cookies={'from-my': 'browser'})
print(r.text)
# '{"cookies": {"from-my": "browser"}}'
r = s.get('http://httpbin.org/cookies')
print(r.text)
# '{"cookies": {}}'
jidesheng6 发表于 2020-10-5 18:44
把cookie和headers写一起试试,我喜欢这么干
我想说的是爬虫的问题,这个图片只是个例子,我那个有验证码,必须动态获取验证码所在页面的cookie,然后登录页面携带这个cookie登录,所以,之前就加在cookie应该不行吧 luanshils 发表于 2020-10-5 18:45
你打印输出cookie了没,我怎么感觉你都没保存cookie
保存cookie是啥意思啊,我不是直接赋值变量了吗 rsnodame 发表于 2020-10-5 19:03
试试看会话对象,能够跨请求保持某些参数。
s = requests.Session()
session我也试了的,打印cookie同样是空的 关山月明 发表于 2020-10-5 19:18
session我也试了的,打印cookie同样是空的
有几个可能
1、你拿来测试的cookie格式不对。建议用浏览器登录后,直接复制浏览器的cookie
2、更新cookie的方法不对。我一般是用 session.cookies.update() 的方式更新cookie
页:
[1]
2