Как загрузить недостающие неймспейсы в suds?
Загружаю через доктора, но в XSD есть ссылки на типы, определенные в WSDL:
def importxsd(xsdfile):
ns = lxml.etree.parse(xsdfile).getroot().get('targetNamespace')
return Import(ns, location='file://' + os.path.abspath(xsdfile))
imps = [ importxsd(xsdfile) for xsdfile in glob.glob('./*.xsd') ]
doctor = ImportDoctor(*imps)
logging.getLogger('suds.client').setLevel(logging.DEBUG)
client = Client(WSDL, username=USER, password=PASSWORD, doctor=doctor)
Как загружать xsd после wsdl?
Например в zeep я делал:
client.wsdl.types.add_document_by_url(xsdfile)