如何使用Zeep和Python 3.7捕获错误

时间:2019-06-10 11:48:14

标签: python zeep

我正在学习如何使用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

2 个答案:

答案 0 :(得分:0)

我决定导入请求并按如下所示处理异常:

例外(requests.exceptions.HTTPError,KeyError,TimeoutError)为e

谢谢

答案 1 :(得分:0)

也许这为时已晚,但是您可以导入zeep.exceptions并以这种方式处理各种异常。您只需要检查异常并按照上面的说明进行捕获即可。

解决方案显示为in this documentation