Net::Amazon

CPANをうろうろしてたら、Net::Amazonってのがあることに気が付いた。
これはAmazonが提供しているWebサービスを簡単に使えるってなことらしい。


で、さっそくコードを書いてみた。
とりあえず、指定したASINの売り上げランキングを表示するだけのテキトーコードです。
うーん、便利なモジュールだ。書くのがスゲー楽ちん。

#!/usr/bin/perl
#
# aws_rank.pl
#  usage: aws_rank.pl -a [ASIN]
#
use strict;
use Net::Amazon;
use Net::Amazon::Request::ASIN;
use Getopt::Std;

my %opts;
getopts('a:',\%opts);
my $asin = $opts{a};
unless(defined $opts{a})
{
        print("no ASIN");
        exit;
}

my $ua = Net::Amazon->new(
        token => '私のSubscription ID',
        locale => 'jp',);	# 日本のAmazonを指定

# ASINを渡す
my $req = Net::Amazon::Request::ASIN->new(
        asin => $asin
);
my $resp = $ua->request($req);

unless ($resp->is_success())
{
        print("???");
        exit;
}

# 各種プロパティを取ってくる
my $prop = $resp->properties;
print $prop->SalesRank();	# 売り上げランキング
exit;

この辺に実装してみた。
今夜わかるTCP/IP
今夜わかるHTTP