使用Python从单个请求获取html和标头

时间:2012-06-08 12:29:15

标签: python urllib2 httpconnection

我正在调查使用python发送单个http请求以检索html和http标头信息的可能性,而不是必须进行2次单独调用。

任何人都知道有什么好方法吗?

这些请求的不同方法之间的性能差异是什么,例如: urllib2和httpconnection等。

2 个答案:

答案 0 :(得分:3)

只需使用urllib2.urlopen()即可。可以通过调用返回对象的read()方法来检索HTML,并且标题在headers属性中可用。

import urllib2
f = urllib2.urlopen('http://www.google.com')

>>> print f.headers
Date: Fri, 08 Jun 2012 12:57:25 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Connection: close

>>> print f.read()
<!doctype html><html itemscope itemtype="http://schema.org/WebPage"><head><meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
... etc ...

答案 1 :(得分:1)

如果您使用HTTPResponse,您可以使用两个函数调用标题和内容,但它不会两次访问服务器。