How can I return XML from boto calls

0 votes

I am using boto 2.32.1 with Python 2.7.6. I am having problems with the list_orders function of boto's mws modules to get the XML data of my Amazon orders.

Here is the call I make:

response = connection.list_orders(CreatedAfter='2014-08-26T05:53:44+00:00', 

Here is the value of response (with personal information removed obviously)

ListOrdersResponse{u'xmlns': u''}
(ListOrdersResult: ListOrdersResult{}
(CreatedBefore: u'2014-08-26T10:06:10Z', Orders: ^Orders^{}
(Order: [Order{}(***ORDER INFORMATION***)])), 
ResponseMetadata: ^ResponseMetadata^{}(RequestId: u'xxxxxxxxxx'))

This isn't ideal because I have another module for eBay sales that works with the XML returned by ebaysdk-python. Amazon formats their XML similarly to eBay so if I could get the XML returned by Amazon instead of the format above, it would be brilliant.

I have noticed that if I use boto.set_stream_logger('boto'), it will print the XML returned so maybe I could take advantage of that somehow?

This is what I would like to be returned:

<ListOrdersResponse xmlns="">

I could then use Python's xml.etree.ElementTree to parse and work with the data.

Jul 20, 2018 in AWS by Flying geek
• 3,260 points

1 answer to this question.

0 votes

I don't think there's an officially supported method to do this, but you can do this to get the raw XML response back easily:

# Set up
from boto.mws.connection import MWSConnection
MWSConnection._parse_response = lambda s, x, y, z: z

# Usage
result = az.get_matching_product_for_id(MarketplaceId="ATVPDKIKX0DER",
# <?xml version="1.0"?>\n<GetMatchingProductForIdResponse xmlns...
answered Jul 20, 2018 by Cloud gunner
• 4,650 points

Related Questions In AWS

0 votes
1 answer

How can i copy tables from one database to other on AWS?

You can use AWS Data pipeline to ...READ MORE

answered Jul 5, 2018 in AWS by Priyaj
• 58,140 points
0 votes
1 answer

How can I do Continuous data ingestion from on prem data sources to redshift

I can Recommend looking into AWS Schema ...READ MORE

answered Aug 8, 2018 in AWS by Priyaj
• 58,140 points
0 votes
2 answers

How can I find out the instance id of an ec2 instance from within the ec2 instance?

A curl or wget to will ...READ MORE

answered Mar 9, 2020 in AWS by anonymous
+2 votes
1 answer

Deploy Docker Containers from Docker Cloud

To solve this problem, I followed advice ...READ MORE

answered Sep 3, 2018 in AWS by Priyaj
• 58,140 points
+15 votes
2 answers

Git management technique when there are multiple customers and need multiple customization?

Consider this - In 'extended' Git-Flow, (Git-Multi-Flow, ...READ MORE

answered Mar 27, 2018 in DevOps & Agile by DragonLord999
• 8,450 points
0 votes
1 answer