调用公开REST API时requests/urllib3持续抛出Timeout Value错误的问题求助
调用公开REST API时requests/urllib3持续抛出Timeout Value错误的问题求助
我正在给一款大型建筑类软件开发插件,需要把公开REST API的数据拉取到软件里。但每次用这段代码请求数据时:
r = requests.get(self.Server + "/merkmale/api/v1/public/filter")
总会弹出这个错误:
File "C:\ProgramData\Nemetschek\Allplan\2024\Etc\PythonParts-site-packages\urllib3\util\timeout.py", line 152, in _validate_timeout raise ValueError( ValueError: Timeout value connect was _TYPE_DEFAULT.token, but it must be an int, float or None.
我成功拿到过一次响应,但之后再也复现不了,是不是我漏掉了什么连接清理的步骤?
目前我使用的是requests 2.32.3和urllib3 2.3.0版本。
先提前说下:我是Python新手,还是工程专业的学生,如果我不小心忽略了什么很基础的问题,还请多多包涵🙏
我已经尝试过这些解决方法:
- 直接在请求里定义超时值:
get(Server, timeout=5) - 预定义超时元组,分别设置连接和读取的超时时间:
Timeout(5,5) get(self.Server+"/merkmale/api/v1/public/filter", timeout=Timeout) - 更换过urllib3和requests的版本,因为我在GitHub上看到有人提到这可能能解决问题。
这个API正常返回的应该是JSON格式的数据,我打算把它转成字典后再做后续处理。另外这个API是德语的。
备注:内容来源于stack exchange,提问作者CtrlAltConcrete
相关产品推荐
相关产品推荐

