Python Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Python Examples

Quick Start
Python Unicode
Python Byte Array
Python Certs
Python Email
Python Encryption
Python FTP
HTML-to-XML
Python HTTP
Python IMAP
Python MHT
Python MIME
Python RSA
Python S/MIME
Python Signatures
Python Socket
Python Spider
Python Tar
Python Upload
Python XML
Python XMP
Python Zip

More Examples...
String
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Bz2
Icon

 

 

 

 

 

 

 

SOAP Example

How to send a SOAP request and get the XML response.

Download Chilkat Python Library

import sys
import chilkat

req = chilkat.CkHttpRequest()
http = chilkat.CkHttp()

#  Any string unlocks the component for the 1st 30-days.
success = http.UnlockComponent("Anything for 30-day trial")
if (success != True):
    print http.lastErrorText()
    sys.exit()

#  Build this XML SOAP request:
#  <?xml version="1.0" encoding="utf-8"?>
#  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
#  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
#  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
#    <soap:Body>
#      <GetQuote xmlns="http://www.webserviceX.NET/">
#        <symbol>string</symbol>
#     </GetQuote>
#    </soap:Body>
#  </soap:Envelope>
soapReq = chilkat.CkXml()
soapReq.put_Encoding("utf-8")
soapReq.put_Tag("soap:Envelope")
soapReq.AddAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance")
soapReq.AddAttribute("xmlns:xsd","http://www.w3.org/2001/XMLSchema")
soapReq.AddAttribute("xmlns:soap","http://schemas.xmlsoap.org/soap/envelope/")

soapReq.NewChild2("soap:Body","")
soapReq.FirstChild2()
soapReq.NewChild2("GetQuote","")
soapReq.FirstChild2()
soapReq.AddAttribute("xmlns","http://www.webserviceX.NET/")
soapReq.NewChild2("symbol","MSFT")
soapReq.GetRoot2()

print soapReq.getXml()

#  Build an SOAP request.
req.UseXmlHttp(soapReq.getXml())
req.put_Path("/stockquote.asmx")

req.AddHeader("SOAPAction","http://www.webserviceX.NET/GetQuote")

#  Send the HTTP POST and get the response.  Note: This is a blocking call.
#  The method does not return until the full HTTP response is received.

domain = "www.webservicex.net"
port = 80
ssl = False

# resp is a CkHttpResponse
resp = http.SynchronousRequest(domain,port,ssl,req)
if (resp == None ):
    print http.lastErrorText()
else:
    #  The XML response is in the BodyStr property of the response object:
    soapResp = chilkat.CkXml()
    soapResp.LoadXml(resp.bodyStr())

    #  The response will look like this:
    #  <?xml version="1.0" encoding="utf-8"?>
    #  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    #  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    #  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    #    <soap:Body>
    #      <GetQuoteResponse xmlns="http://www.webserviceX.NET/">
    #        <GetQuoteResult>string</GetQuoteResult>
    #      </GetQuoteResponse>
    #    </soap:Body>
    #  </soap:Envelope>
    #  Navigate to soap:Body
    soapResp.FirstChild2()
    #  Navigate to GetQuoteResponse
    soapResp.FirstChild2()
    #  Navigate to GetQuoteResult
    soapResp.FirstChild2()

    #  The actual XML response is the data within GetQuoteResult:
    xmlResp = chilkat.CkXml()
    xmlResp.LoadXml(soapResp.content())

    #  Display the XML response:
    print xmlResp.getXml()


 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2007 Chilkat Software, Inc. All Rights Reserved.