1

我正在寻找使用robobrowser. 所以我定义:

from robobrowser import RoboBrowser

cookie={'name':'sc_device_auth',
    'value':'abcdef',
    'domain':'www.url.com/'}

browser = RoboBrowser(history=True,\
        user_agent='Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1'\
        ,parser='lxml')

browser.session.cookies.update(cookie)

但是,browser没有cookie正确导入:

In [0]: browser.session.cookies
Out [0]: <RequestsCookieJar[Cookie(version=0, name='domain',value='www.url.com/', port=None, port_specified=False, domain='', domain_specified=False, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False),
    Cookie(version=0, name='name', value='sc_device_auth', port=None, port_specified=False, domain='', domain_specified=False, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False),
    Cookie(version=0, name='value', value='abcdef', port=None, port_specified=False, domain='', domain_specified=False, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False)
                           ]>

browser不会将我的 cookie 作为一个 cookie 导入,而是作为 3 个不同的 cookie... 作为Robobrowser基础Requests,我使用:如何使用 Python Requests 库在发布请求中发送 cookie?

谢谢你。

4

1 回答 1

3

我对我的问题有部分看法。我定义:

from robobrowser import RoboBrowser

cookie={'sc_device_auth':'abcdef'}

browser = RoboBrowser(history=True,\
    user_agent='Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101  Firefox/40.1'\
    ,parser='lxml')

browser.session.cookies.update(cookie)

使用这个新字典定义的 cookie,似乎可以工作。但 cookie 不是域保留的。

不是完美的解决方案。但有效。

于 2017-01-13T11:46:33.790 回答