请问
requests 库 使用过程中timeout错误的默认时间是多长呢?
查看源码 理论上 timeout值可以任意设?
默认 timeout 值 是怎么来的呢?
如果我想设一个比较大的timeout 值 会生效吗?
请问
requests 库 使用过程中timeout错误的默认时间是多长呢?
查看源码 理论上 timeout值可以任意设?
默认 timeout 值 是怎么来的呢?
如果我想设一个比较大的timeout 值 会生效吗?
3 回答3.1k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答1.8k 阅读✓ 已解决
4 回答1.8k 阅读
3 回答1.7k 阅读
1 回答1.4k 阅读✓ 已解决
Requests 库是基于 urllib3 的,其连接的发起是调用了 urlopen 方法。其超时时间默认是 urllib3 中的 DEFAULT_TIMEOUT 决定。
在 urllib3中:
而 _GLOBAL_DEFAULT_TIMEOUT 的值是由 python 标准库 socket.py 决定的,在 socket.py 的源码中可以看到:
getdefaulttimeout 函数在文档中已经有了非常明确地描述,你也可以点击这里查看:
也就是说当未指定超时时间时,默认的超时时间是 None,亦即连接永远不会超时。
对于 requests 的超时时间设置,在 requests 的文档中已经描述的非常清楚了,可以是一个浮点数或者一个元组,在此就不再赘述。