Python会话更新cookie



更新:我尝试了12种建议的解决方案,但根本不起作用。我的问题遗漏了什么细节吗?建议的答案不能解决问题

在python中我写:

print(s.cookies.get_dict())

其中s是我的会话,输出是:

{'lubl': 'https%3A%2F%2Fopenworld.com%2Fconfirm', 'rishum': 'SHjshd2398-'}

现在我的问题是我如何编辑rishum cookie,这样我想在它旁边附加'test'(或者让事情简单地用'test'代替它)?

例如,我想:

'rishum': 'SHjshd2398-test'

注意:有人建议我尝试以下,但没有工作:

print(s.cookies.get_dict())
s.cookies.get_dict()['rishum'] = 'test'
print(s.cookies.get_dict())

前后输出为:

{'lubl': 'confirm', 'rishum': 'SUqsadkjn239s8n-', 'PHPSESSID': 'nfdskjfn3k42342', 'authchallenge': 'asjkdnjnkj34'}

{'rishum': 'SUqsadkjn239s8n-', 'lubl': 'confirm', 'PHPSESSID': 'nfdskjfn3k42342', 'authchallenge': 'asjkdnjnkj34'}

注意顺序已经改变

我从你的问题中理解的方式,s是json文件,等于

s = {'lubl': 'https%3A%2F%2Fopenworld.com%2Fconfirm', 'rishum': 'SHjshd2398-'}

如果您想在'rishum'的末尾添加'test',则需要执行以下操作

s['rishum'] = s['rishum'] + 'test' 

比和

print(s)

我相信你的错误是你调用了两次函数,这就是为什么你得到了相同的答案。

在这种情况下,您首先需要删除您的cookie,然后创建一个新的,我将这样做:

print(s.cookies.get_dict())
my_cookie = s.cookies.get_dict()['rishum'] + 'test' 
s.cookies.set('rishum', None)
s.cookies.set('rishum', my_cookie)
print(s.cookies.get_dict())

最新更新