Python请求响应时间超时

时间:2016-03-10 13:25:55

标签: python time python-requests response-time

我正在尝试执行一些基准测试并在Request上遇到一些问题。问题是如果响应时间很长,它会抛出一些错误。如果else等待的时间超过2秒,如何让它返回request.get

time = requests.get('http://www.google.com').elapsed.total_seconds()

if time < 1:
    print "Low response time"
else:
    print "High reponse time"

2 个答案:

答案 0 :(得分:1)

使用requests.get的超时参数。如果请求花费的时间超过超时值,requests.get将引发requests.exceptions.Timeout异常。

try:
    resp = requests.get('http://www.google.com', timeout=1.0)
except requests.exceptions.Timeout as e:
    print "High reponse time"
else:
    print "Low response time"

答案 1 :(得分:0)

我不知道有什么错误被调用(你的意思是这里的例外吗?)。如果它抛出异常,那么你可以把它放在try / except:

try:
    time = requests.get('http://www.google.com').elapsed.total_seconds()
    if time < 1:
        print "Low response time"
    else:
        print "High response time"
except:
    # threw an exception
    print "High response time"

如果你知道抛出的异常类型,那么我会设置除了捕获该异常而没有其他异常。