【发布时间】:2010-02-23 03:18:31
【问题描述】:
我正在使用urllib2,并尝试从Response 对象中提取可打印形式的标题。
目前我正在打印str(response.info()),但是打印的内容本身就是一个 Python 字符串(至少在我的理解中)。
(Pdb) p str(response.info())
'Date: Tue, 23 Feb 2010 03:12:26 GMT\r\nServer: Apache\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 9045\r\nConnection: close\r\nContent-Type: text/html; charset=ISO-8859-1\r\n'
我需要将该字符串转换为“实际”字符串,例如通过评估或类似的方式。我发现的最佳理论解决方案是使用:
s = str(response.info())
print s.decode("string_escape")
但这不起作用。更令人困惑的是如何处理字符串中的引号,调用eval(s) 和str(s) 也不起作用。
有没有更好的方法来提取响应中的原始标头而不用引用,或者像上面那样解码字符串 s 的方法?
【问题讨论】: