Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 10, 2011 09:37:43

ks
От:
Зарегистрирован: 2009-05-20
Сообщения: 61
Репутация: +  0  -
Профиль   Отправить e-mail  

Как из opener'а вытащить куки?

cj = cookielib.CookieJar()
op = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)
op.open(url, data)
Вот таким вот образом получается сделать запрос(я так понимаю POST-запрос).
Каким образом вытащить из него куки?
И правильно ли я предположил, что это именно POST запрос?



Офлайн

#2 Дек. 10, 2011 19:08:19

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9973
Репутация: +  856  -
Профиль   Отправить e-mail  

Как из opener'а вытащить куки?

cj._cookies

>>> import cookielib
>>> cj = cookielib.CookieJar()
>>> c = cookielib.Cookie('1', 'abc', 'defg', '80', '80', 'hijk', 'hijk', 'hijk', 'hijk', '/path', '/path', '1', '1', 'abc', 'defg', 'defg', 'hijk')
>>> c
Cookie(version=1, name='abc', value='defg', port='80', port_specified='80', domain='hijk', domain_specified='hijk', domain_initial_dot='hijk', path='hijk', path_specified='/path', secure='/path', expires=1, discard='1', comment='abc', comment_url='defg', rest='defg', rfc2109='hijk')
>>> cj.set_cookie(c)
>>> cj
<cookielib.CookieJar[Cookie(version=1, name='abc', value='defg', port='80', port_specified='80', domain='hijk', domain_specified='hijk', domain_initial_dot='hijk', path='hijk', path_specified='/path', secure='/path', expires=1, discard='1', comment='abc', comment_url='defg', rest='defg', rfc2109='hijk')]>
>>> print cj
<cookielib.CookieJar[<Cookie abc=defg for hijk:80hijk>]>
>>> cj._cookies
{'hijk': {'hijk': {'abc': Cookie(version=1, name='abc', value='defg', port='80', port_specified='80', domain='hijk', domain_specified='hijk', domain_initial_dot='hijk', path='hijk', path_specified='/path', secure='/path', expires=1, discard='1', comment='abc', comment_url='defg', rest='defg', rfc2109='hijk')}}}
>>>



Офлайн

#3 Дек. 11, 2011 04:12:56

ks
От:
Зарегистрирован: 2009-05-20
Сообщения: 61
Репутация: +  0  -
Профиль   Отправить e-mail  

Как из opener'а вытащить куки?

py.user.next
cj._cookies
Спасибо, все верно. Просто я так и не понял, что делает этот opener.
Видимо как раз и меняет _cookies в cj, с вызовом html-страницы.



Офлайн

#4 Дек. 13, 2011 10:25:10

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9973
Репутация: +  856  -
Профиль   Отправить e-mail  

Как из opener'а вытащить куки?

похоже, что он получает куки, которые отправляет при следующем запросе



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version