Jun*_* Gu 6 python soap soap-client zeep
我认为我想做的事情很像zeep repo中的github问题 ---但可惜的是目前还没有任何回应。我研究了肥皂泡沫并安装并尝试了-甚至没有使发送参数正常工作,并认为zeep似乎可以更好地维护?
编辑1:确定我不是在谈论这个
您可以使用插件将 xml 编辑为纯字符串。我使用这个插件将字符 '<' 和 '>' 保留在 CDATA 元素中。
from xml import etree
from zeep import Plugin
class my_plugin(Plugin):
def egress(self, envelope, http_headers, operation, binding_options):
xml_string = etree.ElementTree.tostring(envelope)
xml_string = xml_string.replace("<", "<")
xml_string = xml_string.replace(">", ">")
parser = etree.ElementTree.XMLParser(strip_cdata=False)
new_envelope = etree.ElementTree.XML(xml_string, parser=parser)
return new_envelope, http_headers
Run Code Online (Sandbox Code Playgroud)
然后只需在客户端导入插件:
client = Client(wsdl='url', transport=transport, plugins=[my_plugin()])
Run Code Online (Sandbox Code Playgroud)
看看文档:http : //docs.python-zeep.org/en/master/plugins.html