在 Python 中访问 Firefox 3 cookie
我正在尝试制作一个 python 脚本,该脚本将在 Firefox 中使用 cookie 访问网站。如果 cookielib.MozillaCookieJar 支持 Firefox 3,它就会工作。有没有办法在 python 中访问 Firefox 3 cookie?
我看到 [home]/.mozilla/firefox/[randomletters].default/ 下有两个文件,名为 cookies.sqlite 和 cookies-nontor.xml。 .xml 文件看起来很容易编写一个从中返回 CookieJar 的函数,但如果已经有一个模块可以执行此操作,那么我想避免重新发明轮子。
I'm trying to make a python script that will access a website with the cookies in Firefox. cookielib.MozillaCookieJar would work if it supported Firefox 3. Is there a way to access Firefox 3 cookies inside of python?
I see that there are two files under [home]/.mozilla/firefox/[randomletters].default/ called cookies.sqlite and cookies-nontor.xml. The .xml file looks like it would be easy to write a function that will return a CookieJar from it, but if there's already a module that does this, then I'd like to avoid re-inventing the wheel.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是访问 FF 3 中 SQLite cookie 的秘方 Python bug Tracker 和 Mechanize 也支持这一点。
Here's a recipe for accessing the SQLite cookies in FF 3. There's a patch at the Python bug Tracker and Mechanize also supports this.
我创建了一个从 Firefox 加载 cookie 的模块,可在此处找到: https://bitbucket.org/richardpenman/browser_cookie/< /a>
用法示例:
I created a module to load cookies from Firefox, available here: https://bitbucket.org/richardpenman/browser_cookie/
Example usage:
TryPyPy 的答案 让我走上了正轨,但链接配方中的代码已经过时,无法在 Python3 上运行。以下是 Python3 代码,它将从正在运行的 Firefox 读取 cookie jar 并在查询网页时使用它:
在带有 Python 3.4.2 和 Firefox 39.0 的 Kubuntu Linux 14.10 上测试。该代码也可从我的 Github 存储库获取。
TryPyPy's answer got me on the right track, but the code in the linked recipe was outdated and would not work with Python3. Here is Python3 code that will read the cookie jar from a running Firefox and use it when querying web pages:
Tested on Kubuntu Linux 14.10 with Python 3.4.2 and Firefox 39.0. The code is also available from my Github repo.