Chilkat2-Python
Chilkat2-Python
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 Chilkat2-Python Downloads
import sys
import chilkat2
success = False
xml = chilkat2.Xml()
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.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.")