相关疑难解决方法(0)

如何使用Python从Web浏览器获取cookie?

上下文:
我正在进行对OpenID使用者的后端访问(实际上是StackExchange).如果我要向用户提供所有可能的OpenID提供程序作为选项,那么在我提交Open ID URL之前,我必须模拟浏览器交互以对每个提供程序进行身份验证.但是,我想我可以通过访问用户网络浏览器的现有cookie,并直接使用URL向消费者请求身份验证来缩短这一空白.

问题:
如何访问用户的网络浏览器的cookie?我已经看到很少有关于如何使用Python的信息.这个上一个问题部分回答了有关Firefox的问题,特别指出她下面的代码示例.但是,我需要从Linux上使用的最常见的Web浏览器访问cookie,而不仅仅是Firefox.

#! /usr/bin/env python
# Protocol implementation for handling gsocmentors.com transactions
# Author: Noah Fontes nfontes AT cynigram DOT com
# License: MIT

def sqlite2cookie(filename):
    from cStringIO import StringIO
    from pysqlite2 import dbapi2 as sqlite

    con = sqlite.connect(filename)

    cur = con.cursor()
    cur.execute("select host, path, isSecure, expiry, name, value from moz_cookies")

    ftstr = ["FALSE","TRUE"]

    s = StringIO()
    s.write("""\
# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file!  Do …
Run Code Online (Sandbox Code Playgroud)

python browser openid cookies

11
推荐指数
1
解决办法
2万
查看次数

如何将 Firefox cookie 导入 python 请求

我登录了Firefox 的某个页面,我想获取cookie并尝试使用python-requests浏览网页。问题是在将 cookie 导入到请求会话后什么也没有发生(就像根本没有 cookie)。请求生成的 cookie 的结构也与 Firefox 不同。是否可以加载 FF cookie 并在请求会话中使用它?

到目前为止我的代码:

import sys
import sqlite3
import http.cookiejar as cookielib
import requests
from requests.utils import dict_from_cookiejar

def get_cookies(final_cookie, firefox_cookies):
    con = sqlite3.connect(firefox_cookies)
    cur = con.cursor()
    cur.execute("SELECT host, path, isSecure, expiry, name, value FROM moz_cookies")
    for item in cur.fetchall():
        if item[0].find("mydomain.com") == -1:
            continue
        c = cookielib.Cookie(0, item[4], item[5],
            None, False,
            item[0], item[0].startswith('.'), item[0].startswith('.'),
            item[1], False,
            item[2],
            item[3], item[3]=="",
            None, None, {})
        final_cookie.set_cookie(c)



cookie …
Run Code Online (Sandbox Code Playgroud)

cookies firefox session-cookies python-3.x python-requests

7
推荐指数
2
解决办法
6208
查看次数