python-amazon-product-api is a Python library that offers a light-weight access to the latest version of the Amazon Product Advertising API without getting in your way.
The Amazon API itself provides programmatic access to Amazon's product selection and discovery functionality. It has search and look up capabilities, provides information on products and other features such as Customer Reviews, Similar Products, Wish Lists and New and Used listings. More information about the API can be found at https://affiliate-program.amazon.com/gp/advertising/api/detail/main.html
All requests made by this module are signed as required since August 15, 2009.
In order to use this API you'll obviously need an Amazon Associates Web Service account for which you must with Amazon at http://aws.amazon.com. Each account contains an AWSAccessKeyId and a SecretKey.
Here is an example how to use the API to search for books of a certain publisher:
AWS_KEY = '...'
SECRET_KEY = '...'
api = API(AWS_KEY, SECRET_KEY, 'de')
node = api.item_search('Books', Publisher='Galileo Press')
The node object returned is a lxml.objectified element. All its attributes can be accessed the pythonic way:
# .pyval will convert the node content into int here
total_results = node.Items.TotalResults.pyval
total_pages = node.Items.TotalPages.pyval
# get all books from result set and
# print author and title
for book in node.Items.Item:
print '%s: "%s"' % (book.ItemAttributes.Author,
Please refer to the lxml.objectify documentation for more details.
This module is still undergoing development. The support for the Amazon Product API is currently limited to a number of operations. Supported so far are:
More functionality is to follow as development progresses.
In order to install python-amazon-product-api you can use:
or download the source package from http://pypi.python.org/pypi/python-amazon-product-api, untar it and run
python setup.py install
You'll also find binaries there to make your life easier if you happen to use a Windows system.
The development version is available bitbucket.org. Feel free to clone the repository and add your own features.
hg clone http://bitbucket.org/basti/python-amazon-product-api/
What's New in This Release: [ read full changelog ]
· Support for XSLT requests.
· Support for Associate tags thanks to Kilian Valkhof.
· New API versions 2010-12-01, 2010-11-01, 2010-10-01, 2010-09-01 and 2010-08-06 added.
· Fixed #16: Cannot install module under Python 2.4 without pycrypto being installed first.
· tox (and hudson) are now used for testing all supported Python versions (which includes Python 2.7 now, too).
· Test server is replaced with pytest-localserver.
· Fixed #18: Throttling no longer block CPU (Thanks to Benoit C).
· Added response-caching API (in amazonproduct.contrib.caching) to ease development (Thanks to Dmitry Chaplinsky for the idea).
· API explicitly warns about deprecated operations.