使用 zeep 访问数据库
Acessing a database using zeep
我正在尝试使用 Zeep 以编程方式从数据库 (BRENDA) 中检索信息。
代码如下。
import zeep
import hashlib
wsdl = "https://www.brenda-enzymes.org/soap/brenda.wsdl"
password = hashlib.sha256("xx".encode('utf-8')).hexdigest()
parameters = "xxx," + password + ",ecNumber*{}#organism*{}#".format("2.7.1.2", "Homo sapiens")
client = zeep.Client(wsdl=wsdl)
print(client)
km_string = client.getKmValue(parameters)
但是,我收到以下错误
AttributeError: 'Client' object has no attribute 'getKmValue'
有人可以帮我解决这个问题吗?
上面的代码在 python 2 中使用 SOAPpy 库时工作正常。但是,我无法在 python 3 中成功安装 SOAPpy,因此我尝试了 Zeep。
显示 SOAP 实现的示例代码可用 here
不是分辨率而是一些提示。
1) 对于 zeep,您需要将 .service 放在客户端和方法名称之间。正确的语法是 client.service.getKmValue(parameters)(看看 documentation)
无论如何,对于 zeep,getKmValue 不存在(但它存在于 wsdl 架构中并且 SoapUi 可以看到它)。
你也可以试试py-suds,
但出于某种原因,我获得了一个调用 wsdl 的 403。
from suds.client import Client
import hashlib
client = Client("https://www.brenda-enzymes.org/soap/brenda.wsdl")
我们修复了网络服务。现在应该可以了。请查看我们网站上的 SOAP 文档。
我正在尝试使用 Zeep 以编程方式从数据库 (BRENDA) 中检索信息。
代码如下。
import zeep
import hashlib
wsdl = "https://www.brenda-enzymes.org/soap/brenda.wsdl"
password = hashlib.sha256("xx".encode('utf-8')).hexdigest()
parameters = "xxx," + password + ",ecNumber*{}#organism*{}#".format("2.7.1.2", "Homo sapiens")
client = zeep.Client(wsdl=wsdl)
print(client)
km_string = client.getKmValue(parameters)
但是,我收到以下错误
AttributeError: 'Client' object has no attribute 'getKmValue'
有人可以帮我解决这个问题吗?
上面的代码在 python 2 中使用 SOAPpy 库时工作正常。但是,我无法在 python 3 中成功安装 SOAPpy,因此我尝试了 Zeep。
显示 SOAP 实现的示例代码可用 here
不是分辨率而是一些提示。
1) 对于 zeep,您需要将 .service 放在客户端和方法名称之间。正确的语法是 client.service.getKmValue(parameters)(看看 documentation)
无论如何,对于 zeep,getKmValue 不存在(但它存在于 wsdl 架构中并且 SoapUi 可以看到它)。
你也可以试试py-suds,
但出于某种原因,我获得了一个调用 wsdl 的 403。
from suds.client import Client
import hashlib
client = Client("https://www.brenda-enzymes.org/soap/brenda.wsdl")
我们修复了网络服务。现在应该可以了。请查看我们网站上的 SOAP 文档。