python中ihttplib,httplib2,urllib2在http请求时哪个更快

 我来答
从空去听8
2017-11-05 · TA获得超过7439个赞
知道大有可为答主
回答量:6907
采纳率:93%
帮助的人:5570万
展开全部

= time.time()

httplib2.Http().request(url)
t6 = time.time()
http2 = t6-t5

t3 = time.time()
req = httplib.HTTPConnection(com')
req.request('GET', '/')
t4 = time.time()        
http = t4-t3


t1 = time.time()
urllib2.urlopen(url)
t2 = time.time()
urll = t2-t1

print http2
print httpprint urll

结果:
0.156999826431
0.0150001049042
0.0780000686646
我写了如上代码测试的时候通常都是httplib的速度较快.实际过程中也是如此吗?还是我测试的不对。还有head请求与get请求,为什么head请求测试的时候感觉并没有节省时间呢。我想写爬虫程序,希望速度能更快。

不知道你做了多少次重复的测试呢,单凭一次的测试结果不说明任何问题,我觉得有以下几点可以说明

  • 抓取网页的时间很多取决于http连接建立和数据传输的时间,所以网络状况的影响很大,如果每次都是重新建立连接,和采用什么python库关系不大

  • urllib3可以复用tcp连接来进行多次http请求,所以可以省掉重新建立tcp的时间;requests会检查是否安装了urllib3。

  • head/get请求的时间取决于你请求的server端是否对这两种请求做了不同的处理,如果没有区分的话,两种请求也就没有区别

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式