【问题标题】:Failed to work with multiple WSDLs using Python zeep无法使用 Python zeep 处理多个 WSDL
【发布时间】:2018-02-06 15:11:52
【问题描述】:

我有 WSDL 服务,它提供了几个链接,例如

http://localhost:8081/View1&Wsdl
...
http://localhost:8081/ViewN&Wsdl

但问题是我无法使用 zeep 库 (2.5.0) 处理多个 WSDL 链接

我的代码:

import zeep

view1_wsdl = 'http://localhost:8081/View1&Wsdl'
client1 = zeep.Client(wsdl=view1_wsdl)
result1 = client1.service.method1()
print(result1) 

view2_wsdl = 'http://localhost:8081/View2&Wsdl'
client2 = zeep.Client(wsdl=view2_wsdl)
result2 = client2.service.method2()
print(result2)

我得到了正确的结果 1,但结果 2 有错误:

Traceback (most recent call last):
  File "C:/.../auto_tests/wsdl_check.py", line 17, in <module>
    result2 = client2.service.method2
  File "C:\...\lib\site-packages\zeep\client.py", line 45, in __call__
    self._op_name, args, kwargs)
  File "C:\...\lib\site-packages\zeep\wsdl\bindings\soap.py", line 110, in send
options=options)
  File "C:\...\lib\site-packages\zeep\wsdl\bindings\soap.py", line 68, in _create
    serialized = operation_obj.create(*args, **kwargs)
  File "C:\...\lib\site-packages\zeep\wsdl\definitions.py", line 197, in create
    return self.input.serialize(*args, **kwargs)
  File "C:\...\lib\site-packages\zeep\wsdl\messages\soap.py", line 63, in serialize
    body_value = self.body(*args, **kwargs)
  File "C:\...\lib\site-packages\zeep\xsd\elements\element.py", line 48, in __call__
    instance = self.type(*args, **kwargs)
  File "C:\...\lib\site-packages\zeep\xsd\types\complex.py", line 42, in __call__
    return self._value_class(*args, **kwargs)
  File "C:\...\lib\site-packages\zeep\xsd\valueobjects.py", line 90, in __init__
    items = _process_signature(self._xsd_type, args, kwargs)
  File "C:\...\lib\site-packages\zeep\xsd\valueobjects.py", line 194, in _process_signature
    len(result), num_args))
TypeError: __init__() takes at most 0 positional arguments (1 given)

我该如何处理?

【问题讨论】:

标签: python soap wsdl zeep


【解决方案1】:

问题出在 WSDL 服务中,而不是在 zeep lib 中。

【讨论】:

  • 这应该是一条评论。答案需要有足够的信息来理解答案。答案应以合理的详细程度进行描述和/或包含答案的最小示例。
猜你喜欢
  • 1970-01-01
  • 2018-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多