Parsing a SOAP response in Python
===

I'm trying to parse a `SOAP` response from a server.  I'm 100% new to `SOAP` and pretty new to communicating using `HTTP`/`HTTPS`.  I'm using Python 2.7 on Ubuntu 12.04.

It looks like `SOAP` is very much like `XML`.  However, I seem to be unable to parse it as such.  I've tried to use `ElementTree` but keep getting errors.  From searches I've been able to conclude that there may be issues with the `SOAP` tags.  (I could be way off here...let me know if I am.)

So, here is an example of the `SOAP` message I have and what I'm trying to do to parse it (this is an actual server response from Link Point Gateway, in case that's relevant).

    import xml.etree.ElementTree as ET
    soap_string = '<SOAP-ENV:Body><fdggwsapi:FDGGWSApiOrderResponse xmlns:fdggwsapi="http://secure.linkpt.net/fdggwsapi/schemas_us/fdggwsapi"><fdggwsapi:CommercialServiceProvider/><fdggwsapi:TransactionTime>Wed Jul 25 10:26:40 2012</fdggwsapi:TransactionTime><fdggwsapi:TransactionID/><fdggwsapi:ProcessorReferenceNumber/><fdggwsapi:ProcessorResponseMessage/><fdggwsapi:ErrorMessage>SGS-002303: Invalid credit card number.</fdggwsapi:ErrorMessage><fdggwsapi:OrderId>1</fdggwsapi:OrderId><fdggwsapi:ApprovalCode/><fdggwsapi:AVSResponse/><fdggwsapi:TDate/><fdggwsapi:TransactionResult>FAILED</fdggwsapi:TransactionResult><fdggwsapi:ProcessorResponseCode/><fdggwsapi:ProcessorApprovalCode/><fdggwsapi:CalculatedTax/><fdggwsapi:CalculatedShipping/><fdggwsapi:TransactionScore/><fdggwsapi:FraudAction/><fdggwsapi:AuthenticationResponseCode/></fdggwsapi:FDGGWSApiOrderResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>'
    targetTree = ET.fromstring(soap_string)

This yields the following error:

    unbound prefix: line 1, column 0

From another stackoverflow [post][1] I've concluded that `SOAP-ENV:Body` may be causing a namespace problem. (I could be wrong.)

I've done other searches to find a good solution for parsing `SOAP` but most of them are from 3+ years ago.  It seems that [suds][2] is pretty highly recommended.  I wanted to get "updated" recommendations before I got too far down a path.

Can anyone recommend a solid (and easy) way to parse a `SOAP` response like the one I received above?  It would be appreciated if you could provide a simple example to get me started (as I said above, I'm completely new to `SOAP`).

  [1]: http://stackoverflow.com/questions/5434288/issue-parsing-a-xhtml-page-using-python?answertab=votes#tab-top
  [2]: https://fedorahosted.org/suds/