Python urllib2.urlopen返回的对象不包含info()或geturl()方法
我正在运行Python 2.7.1,并试图使用urllib2模块访问一些网页。根据Python文档,Python urllib2.urlopen返回的对象不包含info()或geturl()方法,python,http,urllib2,httpresponse,Python,Http,Urllib2,Httpresponse,我正在运行Python 2.7.1,并试图使用urllib2模块访问一些网页。根据Python文档,urllib2.urlopen(): 此函数返回一个类似文件的对象,并带有两个附加方法, geturl()和info() 但是,它表明当我尝试访问代码中最后一个print语句中的info()时,没有此类方法。我得到以下错误: AttributeError: HTTPResponse instance has no attribute 'info' 我不明白。我在Google上找不到任何东西,文档
urllib2.urlopen()
:
此函数返回一个类似文件的对象,并带有两个附加方法,
geturl()
和info()
但是,它表明当我尝试访问代码中最后一个print语句中的info()
时,没有此类方法。我得到以下错误:
AttributeError: HTTPResponse instance has no attribute 'info'
我不明白。我在Google上找不到任何东西,文档清楚地表明,这些方法存在于返回的对象中。有趣的是,正如错误和方法测试所表明的,它返回了一个带有相应方法的HTTPresponse
对象。我错过了什么
我的代码如下:
import urllib2
import httplib, socket
import cookielib
import ntlm
from ntlm import ntlm
url = URLOFSOMESORT
user = USERNAMEHERE
password = PASSWORD
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
data = ""
headers = { 'User-Agent' : user_agent }
passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, url, user, password)
cookie_jar = cookielib.CookieJar()
cookie_handler = urllib2.HTTPCookieProcessor(cookie_jar)
redirect = urllib2.HTTPRedirectHandler()
auth_basic = urllib2.HTTPBasicAuthHandler(passman)
auth_digest = urllib2.HTTPDigestAuthHandler(passman)
auth_NTLM = HTTPNtlmAuthHandler(passman)
opener = urllib2.build_opener(cookie_handler, auth_NTLM, auth_basic, auth_digest, redirect)
urllib2.install_opener(opener)
request = urllib2.Request(url, data, headers)
response = urllib2.urlopen(request)
#cookie_jar.extract_cookies(response, request)
print response.info()
问题在于,您已经收到了一个
HTTPNtlmAuthHandler
。当该类处理请求时,它返回一个HTTPResponse
,而不是标准的“类文件对象”
要查看源代码,请转到。Hrmmmm…只需查看。谢谢哎呀,真臭。正在尝试提取响应上的Cookie