Program AWS with SOAP::Lite and Perl
Use a standard Perl SOAP module to make requests and work with the responses.
Though SOAP requests and responses are more complex than those of XML/HTTP, they’re just as easy to work with if you have the right tools.
What You Need
SOAP::Lite has become the standard way for Perl developers to work with SOAP services. Many ISPs have SOAP::Lite installed, but it’s not yet ubiquitous. A quick request via email could save you hours of straining with the manual installation process. If you’re on a Windows server, you can install it fairly painlessly with the package manager at a command prompt:
ppm install SOAP::Lite
The Code
Instead of assembling URLs, making an Amazon request with SOAP requires assembling a collection of variables and their values. Create a file called amazon.pl with the following code:
#!/usr/bin/perl # amazon.pl # A typical Amazon Web API Perl script that uses the SOAP::Lite Module. # Usage: perl amazon.pl <keyword> #Your Amazon developer's token my $dev_token='insert developer token
'; #Your Amazon affiliate code my $af_tag='insert associate tag
'; #Location of the Amazon WSDL file my $amazon_wdsl = "http://soap.amazon.com/schemas2/AmazonWebServices.wsdl"; use strict; #Use the SOAP::Lite Perl module use SOAP::Lite; #Take the query from the command-line my $keyword =shift @ARGV or die "Usage:perl amazon.pl <keyword>\n"; #Create a new SOAP::Lite instance, feeding it Amazon's WSDL my $amazon_search = SOAP::Lite->service("$amazon_wdsl"); ...
Get Amazon Hacks now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.