我正在学习如何使用Zeep作为我的肥皂客户端。我能够连接到WSDL并查看服务,但是,我仍然坚持如何捕获所有可能的异常。我只能捕获KeyError。我希望能够抓到更多:
基本上类似于以下http客户端示例:
除(http.client.HTTPException,ValueError,KeyError,AttributeError)以外为e
我想使用try ..... except
try:
session = Session()
session.auth = HttpNtlmAuth(username, password)
request_data = {
}
client = Client(wsdl, transport=Transport(session=session))
response = client.service.GetPendingBills(**request_data)
billobj = json.loads(response)
print(billobj)
bills = (len(billobj["Bills"]))
except KeyError as e:
bills = 0
答案 0 :(得分:0)
我决定导入请求并按如下所示处理异常:
例外(requests.exceptions.HTTPError,KeyError,TimeoutError)为e
谢谢
答案 1 :(得分:0)
也许这为时已晚,但是您可以导入zeep.exceptions并以这种方式处理各种异常。您只需要检查异常并按照上面的说明进行捕获即可。
解决方案显示为in this documentation