Dump SOAP Request and Response Messages

This section provides a tutorial example on how to dump SOAP request and response messages with the Zeep Python library.

If you are using Zeep Python library to invoke SOAP Web service operations, Zeep will take your input parameters and convert them into a SOAP request message and post it to the server.

When Zeep receives the SOAP response message, it will convert the message into a result value for you, as shown in the previous tutorial.

If you want to get a copy of the SOAP request and response messages, you can turn on the logging option at the DEBUG level as shown in this Python script example:

#- Dump_SOAP_Messages.py
#- Copyright (c) 2019 HerongYang.com. All Rights Reserved.
#
from zeep import Client
import logging.config

logging.config.dictConfig({
    'version': 1,
    'formatters': {
        'verbose': {
            'format': '%(name)s: %(message)s'
        }
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'verbose',
        },
    },
    'loggers': {
        'zeep.transports': {
            'level': 'DEBUG',
            'propagate': True,
            'handlers': ['console'],
        },
    }
})

wsdl = "https://www.herongyang.com/Service/Hello_WSDL_11_SOAP.wsdl"

client = Client(wsdl)
result = client.service.Hello("Hello from client.")
print(result)

Run the test script to see the SOAP request and response messages in the logging output:

herong$ python3 Dump_SOAP_Messages.py 

zeep.transports: Loading remote data from: 
  https://www.herongyang.com/Service/Hello_WSDL_11_SOAP.wsdl

Forcing soap:address location to HTTPS
zeep.transports: HTTP Post to 
  https://www.herongyang.com/Service/Hello_SOAP_11.php:

<?xml version='1.0' encoding='utf-8'?>
<soap-env:Envelope 
  xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
  <soap-env:Body>
    <ns0:HelloRequest 
      xmlns:ns0="https://www.herongyang.com/Service/">
        Hello from client.
    </ns0:HelloRequest>
  </soap-env:Body>
</soap-env:Envelope>

zeep.transports: HTTP Response from 
  https://www.herongyang.com/Service/Hello_SOAP_11.php (status: 200):

<soapenv:Envelope
  xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:hy="https://www.herongyang.com/Service/">
  <soapenv:Header/>
  <soapenv:Body>
    <hy:HelloResponse>
      Hello from server - herongyang.com.
    </hy:HelloResponse>
  </soapenv:Body>
</soapenv:Envelope>

      Hello from server - herongyang.com.

Table of Contents

 About This Book

Python SOAP Client: Zeep

 What Is Zeep Python Library

 Installing Python Engine on macOS

 Installing Zeep Library

 Parsing WSDL Documents with Zeep Library

 Invoking WSDL Services with Zeep Library

 Invoking WSDL Default Service

Dump SOAP Request and Response Messages

 WSDL 2.0 Not Supported by Zeep Library

 SoapUI - Web Service Testing Tool

 SOAP Web Service and SoapUI

 REST Web Service and SoapUI

 Mock Web Services - herongyang.com/Service

 "SoapResponder" and Web Service Test Tool

 "Calculator" for 4 Integer Operations

 DataFlex Web Service for Country Information

 LatLonListCityNames - Return Latitudes and Longitudes of US Cities

 LatLonListZipCode - Return Latitudes and Longitudes of US Zip Code

 TempConvert Web Service for Temperature Conversion

 NDFDgenByDay - US Weather Forecast by Day

 NDFDgen - US-Weather Forecast for a Single Location

 Currency Exchange Rate

 Bitcoin Blockchain Data API (or Explorer)

 flickr.interestingness.getList - Get Interesting Photos

 UUID/GUID Generator

 NumberToWords - Convert Number in Digits to Words

 TitleCaseWordsWithToken - Words to Title Case Format

 "PUG SOAP" Web Service for PubChem Database

 RSC - ChemSpider APIs

 Discontinued: Currency Converter by kowabunga.net

 Discontinued: GetCountries - Get All Countries and Territories

 Discontinued: GetCurrencies - Get Currencies from All Countries

 Discontinued: GetGMTbyCountry - Get GMT Information of a Given Country

 Discontinued: GetISD - Get ISD Phone Code of a Given Country

 Discontinued: GetCitiesByCountry - Get Cities by Country

 Discontinued: GetInfoByState - Get ZIP Codes of a Given US State

 Discontinued: GetAirportInformationByCountry - Get Airport Code by Country

 Discontinued: GetGeoIP - Get Country by IP Address

 Discontinued: ConvertTemp - Convert Temperature Unit

 Discontinued: ChangeLengthUnit - Convert Length Unit

 Discontinued: ConvertWeight - Convert Weight Unit

 Discontinued: ChangeAreaUnit - Convert Area Unit

 Discontinued: Code39 - Generate Bar Code Images in Code 39 Format

 Discontinued: GenerateBarCode - Generate Bar Code Images

 Discontinued: GetMortgagePayment - Calculate Mortgage Payment

 Discontinued: ConversionRate - Get Currency Exchange Rate

 Discontinued: GetQuote - Get Stock Quote

 Discontinued: GetSunSetRiseTime - Get Sunrise and Sunset Time

 Discontinued: GetWeatherByZipCode - Get Weather by ZIP Code in US

 Discontinued: getTime - Get the Current Time

 Discontinued: questionSearch - Search Yahoo! Questions and Answers

 Discontinued: Hotwire - Get Travel Ticker Deals

 Archived Tutorials

 References

 Full Version in PDF/EPUB