Python 请求响应时间超时

Python Request response time timeouts

我正在尝试执行一些基准测试并遇到一些 Request 问题。问题是如果响应时间很长,它会抛出一些错误。如果 request.get 等待超过例如 2 秒,我怎样才能使 return 成为 else

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

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

我不知道什么叫错误(你是说异常吗?)。如果它抛出异常,那么你可以把它放在 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"

如果您知道抛出的异常类型,那么我会设置 except 以捕获该异常而不捕获其他异常。

使用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"