gpt4 book ai didi

python - 在打开 URL 之间,Mechanize 浏览器中是否会保存 Cookie?

转载 作者:行者123 更新时间:2023-12-01 05:12:43 26 4
gpt4 key购买 nike

我有类似的代码:

br = mechanize.Browser()
br.open("https://mysite.com/")
br.select_form(nr=0)
#do stuff here
response = br.submit()
html = response.read()

#now that i have the login cookie i can do this...
br.open("https://mysite.com/")
html = response.read()

但是,我的脚本的响应就像未登录第二个请求一样。我检查了第一个请求,是的,它登录成功。我的问题是:Mechanize 浏览器中的 cookie 是否需要管理,或者我是否需要设置 CookieJar 之类的东西,或者它是否会为您跟踪所有这些内容?

第一个例子here讨论了请求之间携带的 cookie,但没有讨论浏览器。

最佳答案

是的,您必须在 mechanize 中的 open 请求之间存储 cookie。类似于下面的内容应该可以工作,因为您可以将 cookiejar 添加到 br 对象,并且只要该对象存在,它就会维护该 cookie。

import Cookie
import cookielib
cookiejar =cookielib.LWPCookieJar()

br = mechanize.Browser()
br.set_cookiejar(cookiejar)
br.open("https://mysite.com/")
br.select_form(nr=0)
#do stuff here
response = br.submit()
html = response.read()

#now that i have the login cookie i can do this...
br.open("https://mysite.com/")
html = response.read()

Docs更详细地介绍它。

我经常使用 perl mechanize,但不使用 python,所以我可能错过了一些特定于此的 python 内容工作,所以如果我这样做了,我会道歉,但我不想简单地回答"is"。

关于python - 在打开 URL 之间,Mechanize 浏览器中是否会保存 Cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23840374/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com