关闭python请求连接

use*_*827 4 python python-requests

import requests
requests.get(path_url, timeout=100)
Run Code Online (Sandbox Code Playgroud)

在python请求库的上述用法中,一旦request.get完成运行,连接是否会自动关闭?如果没有,我如何确定连接已关闭

idj*_*jaw 5

是的,代码session.close后面有一个调用get.例如,如果使用像PyCharm这样的适当的IDE,您可以按照get代码查看发生的情况.在里面get有一个要求的电话:

return request('get', url, params=params, **kwargs)
Run Code Online (Sandbox Code Playgroud)

在该request方法的定义中,进行了调用session.close.

通过下面的链接在这里给请求回购,有一个会话控制被打了一个电话:

# By using the 'with' statement we are sure the session is closed, thus we
# avoid leaving sockets open which can trigger a ResourceWarning in some
# cases, and look like a memory leak in others.
with sessions.Session() as session:
    return session.request(method=method, url=url, **kwargs)
Run Code Online (Sandbox Code Playgroud)

  • 是的。正如答案中所指定的,`get` 调用会调用 `request('get'...`,如我的答案中开始 `return` 行中指定的那样。如果您按照我提供的链接进行操作,您将实际上还可以在那里看到 `get` 方法以及它如何调用 `request`。 (2认同)