CkPython
CkPython
Extract and Save PDF from SOAP XML
See more XML Examples
Demonstrates how to extract and save PDF file that is embedded in SOAP XML (or any XML).Chilkat CkPython Downloads
import sys
import chilkat
success = False
xml = chilkat.CkXml()
success = xml.LoadXmlFile("qa_data/soap/soapWithPdf.xml")
if (success != True):
print(xml.lastErrorText())
sys.exit()
# The XML we loaded looks like this:
# <?xml version="1.0" encoding="utf-8" ?>
# <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
# <s:Body>
# <ObtenerPDFResponse xmlns="http://xyz.org/">
# <ObtenerPDFResult xmlns:a="http://schemas.xyz.org/something" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
# <a:CBB i:nil="true" />
# <a:CodigoConfirmacion i:nil="true" />
# <a:ErrorDetallado />
# <a:ErrorGeneral i:nil="true" />
# <a:FechaGenerada i:nil="true" />
# <a:FolioGenerado i:nil="true" />
# <a:OperacionExitosa>true</a:OperacionExitosa>
# <a:PDF>JVBERi0xLjQKJe...</a:PDF>
# <a:XML i:nil="true" />
# </ObtenerPDFResult>
# </ObtenerPDFResponse>
# </s:Body>
# </s:Envelope>
# pdfElement is a CkXml
pdfElement = xml.FindChild("s:Body|ObtenerPDFResponse|ObtenerPDFResult|a:PDF")
if (xml.get_LastMethodSuccess() != True):
print("Did not find the PDF element at the expected location.")
sys.exit()
success = pdfElement.SaveBinaryContent("qa_output/out.pdf",False,False,"")
if (success != True):
print(xml.lastErrorText())
sys.exit()
print("Successfully extracted and saved the PDF.")