Python如何保留HTTP cookie
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python如何保留HTTP cookie,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1490字,纯文字阅读大概需要3分钟。
内容图文
![Python如何保留HTTP cookie](/upload/InfoBanner/zyjiaocheng/803/e1bfb24b83f2441682d48f4d7eb0105b.jpg)
我用过这件作品
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
// ..... log in with username and password.
// urllib2.urlopen() to get the stuff I need.
现在,我如何保留cookie并将过期日期设置为永久,所以下次我不必再次使用用户名和密码登录.我可以直接使用urllib2.urlopen()吗?
“下一次”是指程序结束后,当我启动一个新程序时,我可以从磁盘重新加载cookie并使用它
非常感谢
解决方法:
我强烈建议使用Requests HTTP库.它将为您处理所有这些.
http://docs.python-requests.org/en/latest/
import requests
sess = requests.session()
sess.post("http://somesite.com/someform.php", data={"username": "me", "password": "pass"})
#Everything after that POST will retain the login session
print sess.get("http://somesite.com/otherpage.php").text
编辑:要将会话保存到磁盘,有很多方法.您可以执行以下操作:
from requests.utils import cookiejar_from_dict as jar
cookies = jar(sess.cookies)
然后阅读以下文档.您可以将其转换为FileCookieJar并将cookie保存到文本文件,然后在程序开始时加载它们.
http://docs.python.org/2/library/cookielib.html#cookiejar-and-filecookiejar-objects
或者,您可以挑选dict并将该数据保存到文件中,然后使用pickle.load(文件)加载它.
http://docs.python.org/2/library/pickle.html
编辑2:要处理到期,您可以按如下方式迭代CookieJar.假设cj是以某种方式获得的CookieJar.
for cookie in cj:
if cookie.is_expired():
#re-attain session
要检查是否有任何cookie过期,如果有的话可能更方便(cj中的c为c.is_expired()).
内容总结
以上是互联网集市为您收集整理的Python如何保留HTTP cookie全部内容,希望文章能够帮你解决Python如何保留HTTP cookie所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。