从WSDL文件显式生成自动完成代码?

时间:2011-06-21 20:17:02

标签: python soap autocomplete wsdl suds

我在某个项目中使用the suds library作为SOAP客户端。 我想知道是否有办法根据WSDL文件生成Python代码。

例如,请考虑以下行来自WSDL文件:

<operation name="GetLastTradePrice">

然后,我想在某个.py文件中输入自动生成的函数

def GetLastTradePrice...

这样做的目的是当我有一个客户时能够知道我可能的功能和属性是什么。这意味着如果我要写:

from suds.client import Client
client = Client(SOME_URL)

然后,在输入folloewing后

client.service.

我会选择自动完成GetLastTradePrice

2 个答案:

答案 0 :(得分:0)

Ye olde ZSI库可以从WSDL定义生成Python代码,但与suds相比,使用起来非常痛苦,需要另一个名为PyXML的旧模块。我坚持使用肥皂水,自动完成并不值得。

答案 1 :(得分:0)

python有许多SOAP服务器实现,一些比其他更有用,在PyPI搜索与SOAP相关的包,或者在python.org上查看关于web services的wiki页面。 python基本上有两种类型的SOAP服务器:

  1. 可以从WSDL文件(如ZSI)生成服务器存根的服务器
  2. 可以直接从服务类方法生成WSDL的服务器(如soaplib,ladon)