问题标签 [zeep]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
883 浏览

python-2.7 - 如何强制 zeep 仅使用 TLSv1.2?

我正在使用 python 设计一个 SOAP 客户端,而我连接的 SOAP 服务器只允许 TLSv1.2。我查阅了zeep文档,但找不到任何可以强制它仅使用“TLSv1.2”的设置。如果 zeep 没有此功能,是否还有其他具有此功能的 SOAP python 库?

0 投票
0 回答
636 浏览

python - Python Soap 客户端 WSDL 函数

我正在尝试使用 zeep 创建一个 python 肥皂客户端。但我不知道如何使用 WSDL 中定义的功能。

这是我的代码:

您可以在此处查看 WSDL:www.innovaphone.com/wsdl/pbx10_00.wsdl

0 投票
3 回答
31029 浏览

python - 如何用 Python 解析 SOAP XML?

目标: 获取<Name>标签内的值并打印出来。下面是简化的 XML。

试图:

我读过其他人建议zeep解析soap xml,但我发现很难理解。

0 投票
2 回答
5285 浏览

python-3.x - 使用 zeep SSL 时连接被拒绝

我正在尝试使用zeep访问 SOAP 服务器。我的服务器使用带有自定义证书的 SSL,并且可以使用我的证书连接到该服务器,或者忽略它:

我得到一长串前缀、全局元素、全局类型、绑定和服务。后者说:

所以,就我现在可以说的,我可以创建一个client对象并将其称为名为 的服务getServices()

但这会导致 urllib3 中的错误(~/.virtualenvs/soap/lib/python3.5/site-packages/urllib3/util/connection.py):

我是否忽略 SSL 验证或提供 CA_BUNDLE 都没有关系。两者都被接受,客户端已创建,但我无法调用该getServices()方法。

我在这里忘记了什么?我不认为这是一个问题,因为底层的 urllib3 会引发异常。但是我尝试了几个小时并在互联网上搜索了解决方案,但没有成功。

我从端点获得的 XML 的一部分是:

而且我不知道为什么它会在那里返回一个“本地主机” - zeep 使用它来调用它吗?然后我就会明白为什么会发生永久性错误。

有什么提示吗?

0 投票
1 回答
1129 浏览

python - Python SOAP WSDL 适用于 SOAPpy 但不适用于 ZSI 或 zeep

我需要一个可以处理多部分附件的 python SOAP 库。我的理解是 SOAPpy 或 suds 不支持此功能,但 ZSI 和 zeep 支持此功能。然而,虽然 SOAPpy 可以很好地处理我需要使用的 WSDL 文件,但 ZSI 和 zeep 却给了我错误。这是 WSDL 文件:http ://nva1wss.webex.com/nbr/services/NBRStorageService?wsdl 。我在 SoapUI 中打开文件并使用“检查 WSI 合规性”选项,它通过了所有检查。

这是我的错误:

zeep.exceptions.NamespaceError:无法解析类型 {NBRStorageService}DataHandler。没有可用于命名空间 u'NBRStorageService' 的架构。

ZSI.generate.WsdlGeneratorError:未能找到架构“NBRStorageService”的导入,可能缺少@schemaLocation 属性。

----更新信息----

根据 zeep 的详细输出,我认为 WSDL 的问题在于它使用了 zeep 无法在http://schemas.xmlsoap.org/soap/encoding/的架构文档中解析的数据类型。这是 WSDL 中的数据类型定义:

此 WSDL 似乎是使用 Apache Axis 1.4 生成的。

关于如何解决这个问题的任何想法?或者,如果有人对服务器端更改有任何具体建议,我无法提出,但我当然可以将它们传达给处理服务器的开发人员。

谢谢!

0 投票
0 回答
1340 浏览

python - Python Zeep - 如何使用序列 -> 选择

我正在尝试使用 Zeep 在序列中进行选择,但我无法完成这项工作。

这是我的代码:

我收到以下错误:

因此,问题似乎是“选择元素仅适用于关键字参数”

我的导出 element_object 如下:

我认为问题是“_value_1”,但它是由 Zeep 创建的,并且存在关键字“tradeReference”。

谁能指出我做错了什么?

导出元素:

贸易参考元素:

和服务:

0 投票
3 回答
1018 浏览

python - 将 python 数组 int 转换为 SOAP ArrayofInt

我正在使用zeep python 包,以便通过 SOAP 调用一个函数,该函数接受“ArrayofInt”类型的参数。

传递“普通”整数数组不起作用......解决方法是使用 for 循环遍历数组的元素并一个接一个地发送元素,但这不是我写过的最干净的代码: )

有什么建议么?

0 投票
1 回答
4673 浏览

python - 获取 zeep.exceptions.ValidationError:使用 suds 的方法缺少元素

我正在移植使用suds 0.6over to开发的代码zeep 2.4.0

以前的泡沫代码:

zeep代码:

然后我得到zeep.exceptions.ValidationError: Missing element param_i_didnt_set. 看config.__values__节目

suds config对象的相似之处在于它包含许多带有空变量的键,但suds不抛出ValidationErrors

0 投票
1 回答
143 浏览

python - 如何将元素插入到生成的请求中?

我使用 onvif wsdls。

我想用过滤器发送请求“订阅”。过滤器包含 TopicExpression。像这样请求:

在 python 代码中,我可以在没有过滤器的情况下发送请求。像这样的代码:

并且请求发送成功

但我不知道如何将 TopicExpression 插入到 Filter 中,就像上面的请求一样。请告诉我,我该怎么做?

0 投票
1 回答
2166 浏览

python - WSDL 中缺少 wsdl:service 定义

我正在尝试使用 ZEEP 来执行 SOAP 请求。

我收到了这个请求:

但是我遇到了 WSDL 中缺少 wsdl:service 定义的错误。

我被卡住了,找不到更多的故障搜索方法。有什么想法吗?

编辑上下文。这是一个有效的硬编码请求,我正在尝试使用 zeep:

编辑 2. 添加 wsdl