Как отладить запрос 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 
  • ValueError: неизвестный тип url в urllib2, хотя URL-адрес прекрасен, если он открыт в браузере
  • Почему я получаю «ResultSet» не имеет атрибута «findAll», используя BeautifulSoup в Python?
  • python игнорировать сертификат подтверждения urllib2
  • Как загрузить фрагментированные данные с помощью Pythons urllib2
  • Метод «post» для прямой связи с сервером
  • Как отправить запрос urllib2 с добавленными пробелами
  • Вход в форму сайта с использованием Python urllib2
  • Как правильно разобрать HTML в кодировке UTF-8 в строки Unicode с помощью BeautifulSoup?
  • Python формирует POST с использованием urllib2 (также вопрос о сохранении / использовании файлов cookie)
  • получение значения заголовка местоположения с использованием python urllib2
  • Python: Обработка Javascript с помощью urllib2?
  • Python - лучший язык программирования в мире.