0

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

有谁知道有什么好的方法吗?

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

4

2 回答 2

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 ...
于 2012-06-08T13:05:30.433 回答
1

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

于 2012-06-08T12:32:40.103 回答