获取Urllib2.Request的请求标头?

| 有没有一种方法可以从使用Urllib2创建的请求中获取标头,或者确认用urllib2.urlopen发送的HTTP标头?     
已邀请:
        查看请求(和响应头)的一种简单方法是启用调试输出:
opener = urllib2.build_opener(urllib2.HTTPHandler(debuglevel=1))
然后,您可以看到已发送/已接收的准确标题:
>>> opener.open(\'http://python.org\')
send: \'GET / HTTP/1.1\\r\\nAccept-Encoding: identity\\r\\nHost: python.org\\r\\nConnection: close\\r\\nUser-Agent: Python-urllib/2.7\\r\\n\\r\\n\'
reply: \'HTTP/1.1 200 OK\\r\\n\'
header: Date: Tue, 14 Jun 2011 08:23:35 GMT
header: Server: Apache/2.2.16 (Debian)
header: Last-Modified: Mon, 13 Jun 2011 19:41:35 GMT
header: ETag: \"105800d-486d-4a59d1b6699c0\"
header: Accept-Ranges: bytes
header: Content-Length: 18541
header: Connection: close
header: Content-Type: text/html
header: X-Pad: avoid browser bug
<addinfourl at 140175550177224 whose fp = <socket._fileobject object at 0x7f7d29c3d5d0>>
您也可以在发出请求之前使用
urllib2.Request
对象标头进行设置(并覆盖默认标头,尽管标头字典中将不会出现这些标头):
>>> req = urllib2.Request(url=\'http://python.org\')
>>> req.add_header(\'User-Agent\', \'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0)\')
>>> req.headers
{\'User-agent\': \'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0)\'}
    

要回复问题请先登录注册