0

I'm using SUDS WSDL(SOAP) web services at GAE python.

& trying to consume this 46.51.221.138/PBExternalServices/v1/soap?wsdl.

Here is Py code:

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

But its throwing some error at console as,

  Traceback (most recent call last):
  File "soap.py", line 14, in <module>
    client = Client(url)
      File "build\bdist.win32\egg\suds\client.py", line 112, in __init__
      File "build\bdist.win32\egg\suds\reader.py", line 152, in open
      File "build\bdist.win32\egg\suds\wsdl.py", line 159, in __init__
      File "build\bdist.win32\egg\suds\wsdl.py", line 220, in build_schema
      File "build\bdist.win32\egg\suds\xsd\schema.py", line 95, in load
      File "build\bdist.win32\egg\suds\xsd\schema.py", line 323, in dereference
      File "build\bdist.win32\egg\suds\xsd\sxbasic.py", line 469, in dependencies
    suds.TypeNotFound: Type not found: '(GetAccountBalanceFaultResponse, http://www.
    payback.net/lmsglobal/xsd/v1/types, )'

NOTE: I read some where that need to use suds.xsd.doctor because this WSDL seems broken in different way, but unfortunately i don't know how to use this suds.xsd.doctor here in this.

So any one of us had this issue before & got sorted out?, then please suggest proper solution to get resolve the same.

Warm Regrads,

Niks

Niks Jain
  • 1,617
  • 5
  • 27
  • 53

1 Answers1

2

The following works for me:

from suds.client import Client
wsdl_url = 'http://46.51.221.138/PBExternalServices/v1/soap?wsdl'
client = Client(wsdl_url, autoblend=True)
Jeremy Lewis
  • 1,669
  • 14
  • 17