Webは用いる人のリテラシーで決まる ウェブ運用と開発現場を経験したエンジニアのTIPS
TOP > BLOG > IT記事

Amazon SP-APIにPythonで最安価格を調査して楽に商品登録をしよう

早川朋孝 早川朋孝
EC専門のSE

Amazonに商品登録をするには、登録したい商品がすでにAmazonに登録されているかどうかを調べないといけない。自社開発の商品ならこの調査は不要だが、そうでない場合は事前調査が必要で、商品数によってはかなり面倒くさい。こういうときはAPIで一括処理するに限る。

AmazonのSP-APIを使えば商品情報を一覧で取得できる。競合店の最低価格を調べたいなどのときに便利だ。

公式マニュアル

    def get_items_price(asin):
        canonical_uri = '/products/pricing/v0/items/' + asin + '/offers'
        method = 'GET'
   
        headers = {
         'x-amz-access-token': 'hogehoge',
         'content-type':'application/x-www-form-urlencoded'
        }
        
        request_parameters_unencode = { 
              'MarketplaceId': 'hogehoge',
              'ItemCondition': 'Used'   #新品ならNew、他にCollectible、Refurbished, Club
        }
        
        request_parameters = urllib.parse.urlencode(sorted(request_parameters_unencode.items()))
        endpoint = 'https://sellingpartnerapi-fe.amazon.com' + canonical_uri
        request_url = endpoint + '?' + request_parameters
        response = requests.get(request_url, headers=headers)        

        return response

このAPIを使えば、例えば定期的に価格監視をして、最安価格を取得できる。
さらにFeeds APIで価格変更をすることもできるので、大手メーカーの客寄せの目玉商品を最安価格を維持して自店舗のことを知ってもらう、といった方法をAPIなら手間をかけずに運用できる。

商品ごとに基準となる価格(例えば仕入れ価格など)を設定して、それを下回るなら価格更新しないなども当然できる。EC運用は機械的にできる部分はどんどん自動化・効率化しないと利益が出ない。

上記のコードを使ってためしにウォルター・アイザックソン著のジョブズの伝記の中古価格を一覧で取得してみた。結果を加工して、下記のように価格と送料と状態をまとめて見ると、商品出品の判断に役立つと分かる。

価格 送料 コンディション
1円 350円 良い
1円 350円
1円 350円
111円 240円 非常に良い
1円 350円 良い
1円 350円
466円 0円
221円 250円 良い
472円 0円 良い
500円 0円 非常に良い
500円 0円 良い
500円 0円 良い
1円 698円 良い
1円 698円 良い
700円 0円 良い
300円 410円 良い
19円 698円 非常に良い
518円 200円 非常に良い
467円 280円 非常に良い
500円 257円 良い

※記事を書いた時点のデータです

商品一つでもこれだけ楽になるのだけれど、AmazonのSP-APIを使えば数百でも数万でも自動で取得できる。これで日々のEC業務が楽になる。この仕組みを利用すれば24時間365日稼働する価格巡回ツールなども開発できる。

×
このブログを書いてる人
早川 朋孝 EC専門のSE
IT業界歴20年のエンジニアです。ネットショップ勤務で苦労した経験から、EC・ネットショップ事業者に向けて、バックオフィス業務の自動化・効率化を提案するSEをしています。
プロフィール
API連携の相談にのります
趣味は読書、ピアノ、マリノスの応援など
PAGE TOP