如何提取Firefox会话cookie(首选python语言)

时间:2011-04-04 11:07:59

标签: python firefox cookies

我正在尝试从它的数据库中提取FF cookie(cookies.sqlite)。但是,似乎只能在那里找到具有过期日期的cookie(我正在搜索会话结束时过期的那个)。我甚至打开了FF的“记住打开标签”功能。 我不明白 - 它们之间的根本区别是什么。 我可以在FF UI中看到cookie,但在硬盘上找不到。

任何anwers赞赏。

4 个答案:

答案 0 :(得分:4)

会话cookie存储在sessionstore.js文件中。

此文件本质上是一个JSON对象。如果您解析它,请查看windows[0].cookies下的会话cookie数组。

通常,每个会话Cookie中的唯一字段为{name, host, path, value},但有时您会看到httpOnly参数。

答案 1 :(得分:1)

我一直在找同样的东西,发现了这个: http://blog.mithis.net/archives/python/90-firefox3-cookies-in-python 我想正确的做法是使用代码添加另一个cookiejar后端

答案 2 :(得分:1)

Farlan是正确的,会话cookie存储在sessionstore.js文件中。我创建了一个模块来加载来自sqlite和此会话文件的cookie,可在此处获取:https://bitbucket.org/richardpenman/browser_cookie/

使用示例:

import requests
import browser_cookie
cj = browser_cookie.firefox()
r = requests.get('http://stackoverflow.com', cookies=cj)

答案 3 :(得分:-1)

会话cookie可能会保留在内存中,并在标签/浏览器关闭后删除,永远不会进入数据库。