PHPを使ってAmazonの商品情報をJSON形式で取得

2016/12/08

頑張ればスクレイピングできるんでしょうけどまずは正攻法で。Product Advertising APIを使います。 Amazon Product Advertising API関連リンク集 - Qiitaあたりを参考にアカウントを作っておいてください。

Product Advertising APIはいろんな言語向けのラッパーライブラリがあるので素直に力を借りるのが吉かと思います。 今回はPHPとapai-ioの組み合わせでやってみましょう。apai-ioはcomposerを使ってインストールします。

[vagrant@localhost amazon]$ ls -l
total 1
-rwxrwxrwx. 1 vagrant vagrant 58 Dec  5 13:04 composer.json
[vagrant@localhost amazon]$ cat composer.json
{
    "require": {
        "exeu/apai-io": "~2.0"
    }
}
[vagrant@localhost amazon]$
[vagrant@localhost amazon]$ composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing guzzlehttp/promises (1.3.0)
    Downloading: 100%         

  - Installing psr/http-message (1.0.1)
    Downloading: 100%         

  - Installing guzzlehttp/psr7 (1.3.1)
    Downloading: 100%         

  - Installing guzzlehttp/guzzle (6.2.2)
    Downloading: 100%         

  - Installing exeu/apai-io (2.0.0)
    Downloading: 100%         

Writing lock file
Generating autoload files
[vagrant@localhost amazon]$

apai-ioの使い方は公式サイトを見ればすぐ分かると思います。Product Advertising APIのほうが厄介ですね。できることが多い分ややこしい。 今回は基本的な商品情報だけあればOKだったので最終的なコードは複雑にならなかったですけど。

ちょいと長いですがソースコードはこんな感じ。 なぜか503が返ってくるのでリトライしなきゃいけないのが引っかかります...




関連(するかもしれない)記事


おススメ