Python请求:如何处理后续的request.get?

时间:2013-02-02 13:09:47

标签: python python-requests

import requests

for i in range(3):
    g = requests.get('http://some-url/')
    print "request done"

对于每个启动的请求,在执行其他请求之前,“它”是否等待响应到达(完全加载响应)?

我已经比较了使用浏览器的请求完成这些请求所需的时间,并且请求的加载时间非常快。我不确定这是因为我的浏览器执行javascript,加载图片等,还是因为请求的工作原理。

2 个答案:

答案 0 :(得分:3)

是的,每个请求都是同步完成的,因此下一个请求只会在上一个请求完成后启动。引用release notes

  

0.13.0(2012-05-29)

     

删除Requests.async以支持grequests

答案 1 :(得分:2)

是的,requests.get是同步操作。它等待页面内容作为str被拉入python。 您看到的时差实际上是由于执行了javascipt以及在浏览器中获取其他文件。

在firefox webconsole中,您可以看到下载页面内容所需的时间。此时间应大致等于您查看请求的时间。

相关问题