【プログラミング】アマゾン API を利用して PHP で商品情報を取得する方法 その1【ソースコード付き】

アマゾンのAPIを利用して商品情報を取得したいけど、どうやったらいいんだろう?
PHPで作れないかな?

この記事はこんな疑問にお答えします。

本記事の内容
・アマゾンのAPIを利用するには?
・リクエスト電文の作成方法
・ソースコードの公開

■ アマゾンのAPIを利用するには?

「アマゾンのAPIを利用して商品情報を取得したいけど、やり方がわからないよ」
「プログラミングを学んで作れるようになってきたら、API を使ってみたくなるよね」
「API はそれぞれ決まり事があるから、それを理解しないとできないね」
「使い方を理解しながら、実際にやってみよう」

プログラミングを学んで、少しできるようになってくると自分でツールとか作りたくなってきますよね。

世の中には API というものがものすごく広まっていて、いろいろな情報を取得することができるようになっています。

ちなみに API ですが・・・
API : Application Programmin Interface
といいます。

詳細は、APIでググってもらえればたくさん出てくると思いますので、検索してみてください。

一言でいうと、プログラム間のやり取りをルール化して公開してあるもの、です。

あるシステムを持っている企業が、そのシステムの機能をAPIとして公開すると、そのシステムの機能を外部から使うことができるようになります(データとして受け取ることができるようになります)。

今回で言えば、アマゾンの商品を検索して商品情報をデータとして受け取る、ということができます。

さっそく、アマゾンのAPI の使い方を紹介します。

■リクエスト電文の作成方法

アマゾンのAPIを利用するには、APIキーが必要になります。

これも発行方法はググってもらえればたくさん出てきますので、検索してみてください。

アマゾンのAPI利用で一番わからない部分だけ解説していきます。

アマゾンに商品情報をくださいとお願いするのに、リクエストをしなければなりません。
それをここではリクエスト電文と呼びます。

このリクエスト電文の作り方が難しく、理解するのにかなり苦労します。

僕はかなり苦しみました。

いくつかのサイトの解説を何度も読んで、ロジックに組み込んでは失敗し、組み込んでは失敗し・・・を繰り返しました。

なんとか、うまく行き、実際に商品情報を取得できた時は、ものすごく嬉しかったです。

そのリクエスト電文ですが、以下のような流れで作ります。
1.元になるリクエストを用意します。
2.タイムスタンプを付けます。
3.RFC 3986」形式でエンコーディングします。
4.文言とつないでいる「&」などを消して改行します。
5.パラメーター名で昇順にソートします。
6.もう一度「&」でつなぎます。
7.3行を頭に追加します。
8.ハッシュ関数により暗号化します。
9.「Signature」として最後に追加します。

いやこれ理解できないでしょ・・・って感じです。

■ソースコードの公開

というわけで、よく理解できていないながらも、API でなんとか取得できるようになったソースコードを公開します。
アソシエイトタグ、アクセスキー、シークレットキーはご自分のものを指定してください。

HTML

ご参考にしていただき、何らかの手助けになったら、幸いです。

ちなみに参考にしたサイトです。

マナブさんのブログから参考にしました。
Amazon APIを使って商品検索するPHPコード【配布・コピペOK】

はにわまんさんのブログから参考にしました。
「Amazon API」の使い方を紹介します!最安値やランキング取得できるよ①-アソシエイトID(タグ)登録編-

大変助かりました、感謝です。

次回は、このリクエスト電文を使って、商品情報を取得するソースコードを公開します。

スポンサードサーチ

Amazon Web Servicesプログラミング ―APIの基礎からElastic Beanstalkの利用まで

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です