Python 3.x有哪些可用于SOAP的库?

75

我在网上搜索了一个现有且受支持的Python 3的SOAP库(客户端和服务器)。

这是我找到的库的列表:

Python 2:

  • Zeep:Python 2.7 / 3中活跃并且有良好的文档支持
  • SOAPy:已停止维护的Python 2项目
  • ZSI:已停止维护的Python 2项目
  • soaplib:已停止维护的Python 2项目
  • SUDS:已停止维护的Python 2项目(自2012年以来没有任何活动)
  • rpclib:已停止维护的Python 2项目(自2012年8月以来没有任何活动)

Python 3:

  • Zeep:Python 2/3项目活跃并且有良好的文档支持
  • SOAPy:已停止维护的Python 2项目
  • pysimplesoap:Python 2/3项目活跃
  • SUDS-jurko:相当不活跃。Python 2/3项目
  • ladon:低活跃度,但仅适用于Web服务
  • 你觉得这个列表完整吗?(FYI,我使用了这个帖子作为起点(该帖子的目的是相同的,但针对 Python 2))

    ladon 对我来说似乎是唯一存在的 Python 3 框架,但据我所知,它只能用于实现服务器端。

    NO:我不想自己迁移其中一个已停用的 Python 2 项目。我正在寻找一个受支持的项目,有一个积极的团队在需要时提供帮助。

    更新于 2013 年 9 月 28 日


    1
    pysimplesoap自那时以来已经发布了另一个版本,而且自那以后VCS一直非常繁忙。 - tshepang
    这应该与https://dev59.com/wU_Sa4cB1Zd3GeqP8gVc,https://dev59.com/qEnSa4cB1Zd3GeqPQLKN和https://dev59.com/-nVC5IYBdhLWcg3wtzgQ合并。 - dgorissen
    simplesoap 看起来很适合我的需求。谢谢。 - belteshazzar
    1
    请使用Python Wiki:https://wiki.python.org/moin/WebServices - Mr. Napik
    有没有任何库可以帮助与没有wsdl扩展/文件的URL进行交互? - Shashank
    3个回答

    2

    根据服务的复杂度,您可以使用Ladon作为服务器端,并手动模拟客户端,直到有更好的解决方案。

    只需打开日志记录并调用suds(或类似工具)即可调用服务,并注意请求中的SOAP封装。使用该封装来包装您的请求,并通过纯http调用服务。

    这不是一个理想的解决方案,但在您有替代包之前,它可以帮助您解决问题。


    0

    我几个月前也进行了同样的搜索,并得出了相同的结论。在这个领域里真的没有太多可选择的。最终,我选择了Python 2.7并使用SOAPy来完成我的项目,因为它非常容易使用。虽然它可能已经停止更新,但它仍然可以使用。我认为有时候你只需要把手弄脏一点,自己支持自己,这就是我们被称为程序员的原因。


    3
    目前我正在使用Python 3中的SUDS,我自己进行了移植。但是我真的不希望每次遇到问题时都被迫深入第三方项目的源代码中... - gecco
    2
    你试过把你移植的版本提交给SUDS团队看他们是否会接受吗?他们可能会很高兴得到一个已经移植到Python 3的版本,这样或许就不需要你自己去支持它了。 - ThatAintWorking
    7
    是的:https://fedorahosted.org/suds/ticket/393 - gecco
    4
    想补充一下,现在有一个活跃的suds分支支持Python3:https://bitbucket.org/jurko/suds/overview。只需要执行pip3 install suds-jurko - renfredxh

    0

    rpclib:看起来是唯一一个活跃的项目。在他们的描述中,他们说正在寻找志愿者测试Python 3的兼容性。也许你应该自己成为志愿者!


    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接