Как отладить запрос urllib2, который использует базовый обработчик проверки подлинности

Я делаю запрос с использованием urllib2 и HTTPBasicAuthHandler следующим образом:

 import urllib2 theurl = 'http://someurl.com' username = 'username' password = 'password' passman = urllib2.HTTPPasswordMgrWithDefaultRealm() passman.add_password(None, theurl, username, password) authhandler = urllib2.HTTPBasicAuthHandler(passman) opener = urllib2.build_opener(authhandler) urllib2.install_opener(opener) params = "foo=bar" response = urllib2.urlopen('http://someurl.com/somescript.cgi', params) print response.info() 

В настоящее время я получаю исключение httplib.BadStatusLine при запуске этого кода. Как я могу отлаживать? Есть ли способ увидеть, что является сырым ответом независимо от непризнанного кода статуса HTTP?

One Solution collect form web for “Как отладить запрос urllib2, который использует базовый обработчик проверки подлинности”

Вы пытались установить уровень отладки в своем собственном обработчике HTTP? Измените свой код на что-то вроде этого:

 >>> import urllib2 >>> handler=urllib2.HTTPHandler(debuglevel=1) >>> opener = urllib2.build_opener(handler) >>> urllib2.install_opener(opener) >>> resp=urllib2.urlopen('http://www.google.com').read() send: 'GET / HTTP/1.1 Accept-Encoding: identity Host: www.google.com Connection: close User-Agent: Python-urllib/2.7' reply: 'HTTP/1.1 200 OK' header: Date: Sat, 08 Oct 2011 17:25:52 GMT header: Expires: -1 header: Cache-Control: private, max-age=0 header: Content-Type: text/html; charset=ISO-8859-1 ... the remainder of the send / reply other than the data itself 

Таким образом, три строки для добавления:

 handler=urllib2.HTTPHandler(debuglevel=1) opener = urllib2.build_opener(handler) urllib2.install_opener(opener) ... the rest of your urllib2 code... 

Это покажет необработанный цикл отправки / ответа HTTP на stderr.

Изменить комментарий

Это работает?

 ... same code as above this line opener=urllib2.build_opener(authhandler, urllib2.HTTPHandler(debuglevel=1)) ... rest of your code 
  • Урлобин Urllib на некоторых сайтах (например, StackApps api): возвращает результаты мусора
  • urllib2.HTTPError: ошибка HTTP 400: неверный запрос - Python
  • Прочитать файл-объект как строку в python
  • как включить режим async запросов?
  • Почему urllib2.urlopen не может открывать такие страницы, как «http: // localhost / new-post # comment-29»?
  • Python: почтовый запрос с файлами изображений
  • Загрузка большого количества файлов с помощью python
  • Проблема с python urllib2 parse html
  •  
    Interesting Posts for Van-Lav

    Получение встроенной среды исполнения Python для использования текущего активного virtualenv

    как быстро манипулировать изображением в соответствии с собственной математической функцией в python

    TypeError: данные изображения не могут преобразовываться в float

    Почему этот код для создания журнала Python не работает?

    Не удается открыть видеофайлы «.mp4» с использованием OpenCV 2.4.3, Python 2.7 на компьютере под управлением Windows 7

    Передача вывода маринованного объекта между скриптами python через subprocess.communicate

    Сериализация Django queryset для JSON: получение объекта AttributeError 'tuple' не имеет атрибута '_meta'

    скачать файл с веб-службы в python 3

    Стереть весь массив Python

    Pandas Добавить значения столбца в другой файл данных

    Получить часовую зону из города в Python / Django

    Печать имен и содержимого переменных в качестве инструмента отладки; ищет emacs / Python ярлык

    Пропаривание вставки / вставкаВсегда – длительная задержка?

    Pandas преобразует dataframe в массив кортежей

    Оконный максимум в numpy

    Python - лучший язык программирования в мире.