gpt4 book ai didi

python - 挂载 Session 对象的目的是什么?

转载 作者:行者123 更新时间:2023-12-03 14:33:50 27 4
gpt4 key购买 nike

我在一些代码片段和 Requests documentation 中看到过类似的事情。 :

import requests
sess = requests.Session()
adapter = requests.adapters.HTTPAdapter(max_retries=20)
sess.mount('https://', adapter)

我试图更好地了解 .mount()在这里。在这种情况下,是否只是将所有调用的允许重试次数增加到 sess.request() ?它是否在模拟以下内容:
for _ in range(max_retries):
try:
return sess.request(...)
except:
pass

或者还有更多事情发生吗?

我知道 requests.Session实例是 initialized带有 max_retries=0 的适配器,所以以上只是基于此的预感。

知 Prop 体如何 .mount() 会很有帮助在这种情况下正在改变 session 对象的行为。

最佳答案

.mount()确实按照您的想法进行操作,它只是将自定义适配器安装到给定的架构。

在您给定的示例中,它只会增加允许的重试次数。但实际上它可以做更多取决于使用的适配器。

例如,您还可以通过 HTTPAdapter(pool_maxsize=100) 更改连接池大小.您可以通过创建一个完全自定义的适配器(例如 MyHTTPAdapter)来进行一些进一步的自定义。 .

选择权交给你。

关于python - 挂载 Session 对象的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50939418/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com