Python suds创建对象的错误

Bob*_*ryn 1 python soap suds

尝试使用echosign SOAP API.

wsdl在这里:https://secure.echosign.com/services/EchoSignDocumentService14? wsdl

当我尝试创建某些对象时,即使将其列入其中,它似乎也无法找到该类型 print client

import suds

url = "https://secure.echosign.com/services/EchoSignDocumentService14?wsdl"

client = suds.client.Client(url)
print client


  Service ( EchoSignDocumentService14 ) tns="http://api.echosign"
     Prefixes (10)
        ns0 = "http://api.echosign"
        ns1 = "http://dto.api.echosign"
        ns2 = "http://dto10.api.echosign"
        ns3 = "http://dto11.api.echosign"
        ns4 = "http://dto12.api.echosign"
        ns5 = "http://dto13.api.echosign"
        ns15 = "http://dto14.api.echosign"
        ns16 = "http://dto7.api.echosign"
        ns17 = "http://dto8.api.echosign"
        ns18 = "http://dto9.api.echosign"
     Ports (1):
        (EchoSignDocumentService14HttpPort)
           Methods (45):
                 ...
           Types (146):
              ns1:CallbackInfo
              ns17:WidgetCreationInfo
Run Code Online (Sandbox Code Playgroud)

修剪简洁,但显示名称空间和我现在关注的两种类型.

尝试运行会WCI = client.factory.create("ns17:WidgetCreationInfo")生成此错误:

client.factory.create("ns17:WidgetCreationInfo")Traceback(最近一次调用last):文件"",第1行,在文件"build/bdist.macosx-10.7-intel/egg/suds/client.py"中,行244,in create suds.BuildError:构建(ns17:WidgetCreationInfo)实例时发生错误.因此,无法构造您请求的对象.建议您使用Suds对象手动构造类型.请打开一张带有此错误描述的票证.原因:未找到类型:'(CallbackInfo,http://dto.api.echosign,)'

因此它似乎无法找到CallbackInfo类型.也许是因为它错过了那里的ns?

Bob*_*ryn 5

再次,在这里发布后15分钟计算出来.

suds可以选择对所有命名空间进行交叉授权,以便它们都可以导入彼此的模式.autoblend可以在构造函数中设置或使用该set_options方法.

suds.client.Client(url, autoblend=True)
Run Code Online (Sandbox Code Playgroud)