如何在Python 3.2中导入.xsd或.wsdl文件

时间:2012-01-26 20:54:10

标签: python import xsd wsdl python-3.2

我是Python新手,目前正在运行2to3工具后从2.7到3.2进行一些翻译。它无法修复的一件事是导入.xsd或.wsdl文件。在2.7 像import content这样的东西,其中内容是我们目录中的.xsd文件似乎工作正常,但3.2无法解决此导入。有谁知道我该怎么办?

谢谢!

2 个答案:

答案 0 :(得分:2)

听起来您在.xsd.wsdl文件上使用了代码生成器,对吗?

否则,当您说无法导入.xsd文件时,我感到困惑; 我不认为Python导入工具链允许您在没有新导入器的情况下执行此操作 专为SOAP客户端编写。

我最近不得不与SOAP服务进行通信并确定suds

suds中的Client对象接收一个wsdl文件的URL(我必须修改url以使用file://来指定本地.wsdl文件)

from suds.client import Client

a = Client(<url_to_wsdl_file>)
a.service.Method()

希望这有帮助!我不确定suds是否符合Python 3,并且快速搜索没有产生任何有用的信息。

答案 1 :(得分:0)

2018年更新:

请使用python-zeep代替suds。它得到了很好的支持和积极的发展。泡沫不是。它也 比泡沫

更快

示例,摘自docs

client = Client('http://www.webservicex.net/ConvertSpeed.asmx?WSDL')
result = client.service.ConvertSpeed(
    100, 'kilometersPerhour', 'milesPerhour')