Suds Soap库中的TypeNotFound错误

2024-09-30 08:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用suds library从荷兰土地注册处(WSDL here)调用一个SOAP服务。我首先对SOAPservice进行如下反思:

>>> from suds.client import Client
>>> client = Client(url='http://www1.kadaster.nl/1/schemas/kik-inzage/20141101/verzoekTotInformatie-2.1.wsdl')
>>> print client

Suds ( https://fedorahosted.org/suds/ )  version: 0.4 GA  build: R699-20100913

Service ( VerzoekTotInformatieService ) tns="http://www.kadaster.nl/schemas/kik-inzage/20141101"
   Prefixes (13)
      ns0 = "http://www.kadaster.nl/schemas/kik-inzage/20141101"
      ...
      ns9 = "http://www.kadaster.nl/schemas/kik-inzage/kadastraalberichtobject/v20141101"
   Ports (1):
      (VerzoekTotInformatieSOAP)
         Methods (1):
            VerzoekTotInformatie(ns3:Aanvraag Aanvraag, )  # <== WE WANT TO CALL THIS
         Types (278):
            ns10:AN1
            ns10:AN10
            ...
            ns3:Aanvraag  # <== FOR WHICH WE NEED THIS TYPE
            ns10:AlgemeenAfsluiting
            ns10:AlgemeenBegin
            ...

所以我想调用(唯一可用的)方法VerzoekTotInformatie(意思是“RequestForInformation”),它接受一个Aanvraag对象(“Aanvraag”表示“请求”)。如您所见,Aanvraag类型在类型列表中。所以我尝试将其创建为suggested in the docs,使用:

^{pr2}$

有人知道为什么找不到这个类型,即使它清楚地显示在类型列表中?在

欢迎所有提示!在


Tags: clienthttp类型wwwnlschemassoapsuds
1条回答
网友
1楼 · 发布于 2024-09-30 08:22:08

您需要添加前缀:

In [9]: Aanvraag = client.factory.create('ns3:Aanvraag')

In [10]: Aanvraag
Out[10]:
(Aanvraag){
   berichtversie =
      (VersieAanvraagbericht){
         value = None
      }
   klantReferentie = None
   productAanduiding = None
   Gebruiker =
      (Gebruiker){
         identificatie = None
      }
   Ingang = <empty>
 }

相关问题 更多 >

    热门问题