получить заголовок HTTPS в Python - PullRequest
1 голос
/ 21 июня 2011

Я имею дело с HTTPS и хочу получить HTTP-заголовок для live.com

import urllib2

try:
    email="HelloWorld1234560@hotmail.com"
    response = urllib2.urlopen("https://signup.live.com/checkavail.aspx?chkavail="+email+"&tk=1258056184535&ru=http%3a%2f%2fmail.live.com%2f%3frru%3dinbox&wa=wsignin1.0&rpsnv=11&ct=1258055283&rver=6.0.5285.0&wp=MBI&wreply=http:%2F%2Fmail.live.com%2Fdefault.aspx&lc=1036&id=64855&bk=1258055288&rollrs=12&lic=1")
    print 'response headers: "%s"' % response.info()
except IOError, e:
    if hasattr(e, 'code'): # HTTPError
        print 'http error code: ', e.code
    elif hasattr(e, 'reason'): # URLError
        print "can't connect, reason: ", e.reason
    else:
        raise

, поэтому мне не нужна вся информация из заголовков, мне просто нужна Set-Cookie информация

если вы спрашиваете, что делает скрипт: он предназначен для проверки возможности использования электронной почты в hotmail путем получения суммы от этого вируса CheckAvail=

после редактирования

спасибо за помощь ..после исправления получаю только Set-Cookie у меня проблема, это когда я получаю куки не получаю CheckAvil= я получил много информации без `CheckAvil = после открытия его в браузере и открытия исходного кода я получил его !!смотри картинку enter image description here

Ответы [ 2 ]

5 голосов
/ 21 июня 2011

Объект, возвращаемый response.info(), является экземпляром mimetools.Message (как описано в urllib2 docs ), который является подклассом rfc822.Message, который имеет метод getheader().

Так что вы можете сделать следующее:

response = urllib2.urlopen("...")
print response.info().getheader("Set-Cookie") # get the value of the Set-Cookie header

Однако, если вы проверяете почту, я бы порекомендовал вам использоватьPOP3 или IMAP, если доступно (Python поставляется с модулями для обоих).

0 голосов
/ 16 мая 2014

Это потому, что в вашем http-ответе «Httponly», что означало, что из-за спецификаций, только http-соединение может просматривать.

...