我以前从未使用过SOAP,而且对Python还是有点陌生。我这样做是为了使自己熟悉这两种技术。我已经安装了SOAPlib,并尝试阅读其Client文档,但是我不太了解它。我还有什么可以寻找的更适合用作Python的SOAP客户端库的东西吗?
编辑:以防万一,我正在使用Python 2.6。
如果只需要SOAP客户端,则有一个维护良好的库,称为zeep。它同时支持Python 2和3 :)
更新:
除了上面提到的内容外,我还将参考Python WebServices页面,该页面始终是最新的,其中包含针对SOAP和所有其他Webservice类型的所有主动维护和推荐的模块。
不幸的是,目前,我认为没有“最好的” Python SOAP库。每种主流产品都有其优点和缺点。
较旧的库:
SOAPy:是“最佳”的,但不再维护。在Python 2.5+上不起作用
ZSI:使用起来非常痛苦,并且开发速度很慢。有一个名为“ SOAPpy”的模块,该模块不同于SOAPy(上述)。
“较新的”库:
SUDS:非常Pythonic,易于创建消耗WSDL的SOAP客户端。创建SOAP服务器要困难一些。(此软件包不适用于Python3。有关Python3,请参见SUDS-py3)
SUDS-py3:SUDS的Python3版本
spyne:创建服务器很容易,创建客户端要困难一些。缺少文档。
ladon:创建服务器非常类似于soaplib(使用装饰器)。Ladon同时公开了比SOAP更多的接口,而无需额外的用户代码。
pysimplesoap:非常轻巧,但对客户端和服务器均有用-包括web2py附带的web2py服务器集成。
SOAPpy:与上面的ZSI链接上托管的废弃SOAPpy不同,该版本实际上一直维护到2011年,现在似乎也被废弃了。