import httplib
conn = httplib.HTTPConnection(head)
conn.request("HEAD",tail)
res = conn.getresponse()
我可以得到 res.status ,这是http状态码。
我还可以获得哪些其他元素?
为什么当我打印 res 时,它不会打印字典?我只想查看该字典中的键...
最佳答案
您始终可以使用 dir
检查对象;这将显示它具有哪些属性。
>>> import httplib
>>> conn = httplib.HTTPConnection("www.google.nl")
>>> conn.request("HEAD", "/index.html")
>>> res = conn.getresponse()
>>> dir(res)
['__doc__', '__init__', '__module__', '_check_close', '_method', '_read_chunked', '_read_status', '_safe_read', 'begin', 'chunk_left', 'chunked', 'close', 'debuglevel', 'fp', 'getheader', 'getheaders', 'isclosed', 'length', 'msg', 'read', 'reason', 'status', 'strict', 'version', 'will_close']
同样,您可以调用
help
,如果它具有 __doc__
属性,它将显示对象的文档。如您所见,这是 res
的情况,因此请尝试:>>> help(res)
除此之外,文档指出
getresponse
返回一个 HTTPResponse
对象。因此,正如您在那里(以及在 help(res)
中)所读到的,在 HTTPResponse
对象上定义了以下属性和方法:HTTPResponse.read([amt])
:读取并返回响应正文,或直到下一个 amt 字节。
HTTPResponse.getheader(name[, default])
:获取标题名称的内容,如果没有匹配的标题,则默认。
HTTPResponse.getheaders()
:返回 (header, value) 元组的列表。
(2.4 版新增。)
HTTPResponse.msg
:包含响应 header 的 mimetools.Message 实例。
HTTPResponse.version
:服务器使用的 HTTP 协议(protocol)版本。 HTTP/1.0 为 10,HTTP/1.1 为 11。
HTTPResponse.status
:服务器返回的状态码。
HTTPResponse.reason
:服务器返回的原因短语。
关于python - 在 Python 中,getresponse() 返回什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1752283/