Спасибо, ребят, но все равно не работает.
Вот какова суть: нужно выполнить поиск по блогам через blogs.yandex.ru.
Для того, чтобы поиск сработал, надо передать ему два куки: yandexuid и fuid01.
Эти куки сетятся при входе на главную страницу blogs.yandex.ru. При этом yandexuid мы получаем от самого blogs.yandex.ru, а дальше происходит такой финт:
1. С blogs.yandex.ru нас редиректят на
http://kiks.yandex.ru/su/2. kiks.yandex.ru сначала отвечает 302 Found. К этому пакету прилагаются куки fuid01.
3. После этого с kiks.yandex.ru приходит пакет 200 ОК, в котором куки уже нет.
К сожалению, ни один из перечисленных методов не позволяет получить вот этот второй куки, fuid01
Нет ли у кого-нибудь еще каких-то идей, как их можно получить?
UPD:С помощью HTTPCookieProcessor получилось немного продвинуться вперед. После запуска кода:
import urllib2
class MyHTTPRedirectHandler(urllib2.HTTPRedirectHandler):
def http_error_302(self, req, fp, code, msg, headers):
return urllib2.HTTPRedirectHandler.http_error_302(self, req, fp, code, msg, headers)
http_error_301 = http_error_303 = http_error_307 = http_error_302
cookieprocessor = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(MyHTTPRedirectHandler, cookieprocessor)
urllib2.install_opener(opener)
response =urllib2.urlopen("http://blogs.yandex.ru")
response =urllib2.urlopen("http://kiks.yandex.ru/su/")
print cookieprocessor.cookiejar
Я получаю такой аутпут:
<cookielib.CookieJar[<Cookie fuid01=4fe472a81d844fee.5EepullvlMqL-9gzzK6t4fuYfS7kJjWA9wQ3mFLFEbNbvvY11dHhC-OB7NCwbLYoWvXDKuVZg9JoVaffJnkQ9eNKq7QDc-h9RBGwKi1XyZ9jTHdo2pS_aMRxp3C37F6f for .yandex.ru/>, <Cookie yandexuid=4952104781340371624 for .yandex.ru/>]>
Тут есть все, что мне нужно, но как его выдрать из объекта CookieJar? Эклипс ничего не подсказывает по точке.