我想收集与web请求的每个阶段所用时间相关的统计信息。httplib
提供:
def run(self): conn = httplib.HTTPConnection('www.example.com') start = time.time() conn.request('GET', '/') request_time = time.time() resp = conn.getresponse() response_time = time.time() conn.close() transfer_time = time.time() self.custom_timers['request sent'] = request_time - start self.custom_timers['response received'] = response_time - start self.custom_timers['content transferred'] = transfer_time - start assert (resp.status == 200), 'Bad Response: HTTP %s' % resp.status
这些统计信息是否可以从更高级的接口(如urllib2
)获得?有没有高级图书馆提供这样的统计资料?在
正如在related question中提到的,现在一个好的方法是使用requests库。您可以使用它来测量请求延迟,但我不确定是否可以测量内容传输时间。您可以通过比较HEAD请求和GET请求来实现这一点。在
在时间。时间不是最可靠和精确的。您可以使用python中的timeIt模块进行分析。http://docs.python.org/library/timeit.html 下面是一个使用timeit的代码片段
^{1}$在您的例子中,您必须给create三个timeit对象,用于请求、响应和内容。有关timeit模块的更多信息,请参阅文档
相关问题 更多 >
编程相关推荐