python requests 库的 “连接超时时间”和“读取超时时间”的默认值分别是多少?

python requests 库的 “连接超时时间”和“读取超时时间”的默认值分别是多少?

python requests 库的 “连接超时时间”和“读取超时时间”的默认值分别是多少?

问了一下 chatGPT ,感觉不对


回答:

https://requests.readthedocs.io/en/latest/user/advanced/#time...

python requests 库的 “连接超时时间”和“读取超时时间”的默认值分别是多少?

翻译一下:

大多数对外部服务器的请求应该附加一个超时,以防服务器没有及时响应。默认情况下,请求不会超时,除非明确设置了超时值。如果没有超时,你的代码可能会挂起几分钟甚至更久。

连接超时是Request等待你的客户端与远程机器建立连接的秒数(对应于套接字上的connect()调用)。将连接超时设置为略大于3的倍数是一个好的做法,这是默认的TCP数据包重传窗口。

一旦你的客户端连接到服务器并发送了HTTP请求,读取超时就是客户端等待服务器发送响应的秒数。(具体来说,它是客户端在服务器发送的字节之间等待的秒数)。在99.9%的情况下,这就是服务器发送第一个字节之前的时间)。


回答:

如果你想设置 "连接超时时间" 和 "读取超时时间",可以通过将一个浮点数(表示秒数)或一个二元组(分别表示连接超时和读取超时)传递给 timeout 参数来实现:

import requests

# 设置连接和读取超时为 5 秒

response = requests.get("https://example.com", timeout=5)

# 设置连接超时为 3 秒,读取超时为 10 秒

response = requests.get("https://example.com", timeout=(3, 10))

更多的操作,你看看这篇文章https://www.cnblogs.com/gl1573/p/10129382.html


回答:

官网文档:

Timeouts
You can tell Requests to stop waiting for a response after a given number of seconds with the parameter. Nearly all production code should use this parameter in nearly all requests. Failure to do so can cause your program to hang indefinitely:timeout

最后一句说不设置超时时间的可能会导致你的程序一直挂起。所以chatGPT说的应该是对的

文档地址

以上是 python requests 库的 “连接超时时间”和“读取超时时间”的默认值分别是多少? 的全部内容, 来源链接: utcz.com/p/938895.html

回到顶部