コピー2017.07.23前回記事で別サイトに設置しているAmazonアソシエイトリンク作成ツールについて書きました。こんなのをAmazon商品紹介ページ+ブックマークレットで一気に作成できるツールです。バリューコマースのAPIを利用しています。いうわけで今回はバリューコマース(valuecommerce)のAPIを使って商品リンクを作るツールを自作した時の覚書です。バリューコマースのAPIを使いたいけどよくわからない!という方の参考になれば。具体的なソースコードはほとんどありません。スポンサーリンク目次やりたいことバリュコマのAPI仕様を確認ツールの具体的な動作まとめやりたいことバリューコマースを使ったアフィリエイトリンクをできるだけ簡単に作る、というのがやりたいことです。BookLive!の商品につながるリンクを作成したいとします。バリューコマースでは「MyLink」という仕組みが提供されているので、それを使えばAPIを使わなくても任意のページにつながるリンクを作成することができます。その手順が少し手間のかかるもの。バリューコマースサイトにログインBookLive!の広告ページを開く「広告作成」をクリックMyLinkを選択BookLive!サイトでリンクを張りたいページを開き、URLをコピーMyLinkにURLとテキストまたは画像URLを貼り付けコードを生成といった感じ。一つ二つならばこれでも問題ないのですが、大量にリンクを作りたい場合は時間がかかってしまいます。そこでバリュコマのAPIを叩いて商品リンクを手軽に生成できないか?というわけです。バリュコマのAPI仕様を確認バリューコマースのアフィリエイトAPIについてはだいたい下記ページにまとめられています。アフィリエイトが提供するAPIをご紹介します。リファレンスやガイド等をダウンロードいただけます。www.valuecommerce.ne.jp「PDB」を提供している広告主と提携し、バリューコマースのAPIにリクエストを送るとXML・JSON・JSONP形式でレスポンスが返ってくる、というのはわかるのですが、ソースコードの具体的なサンプルや掲載例が見つからず、またWEBにもあまり具体例がなく苦労しました。「各種パラメータの動作テスト」というテスト用CGIがアップされていたので、こちらで適当な値を入力、返ってきたXMLを確認することで少しずつ仕様が理解できました。ツールの具体的な動作PDBに対応したBookLive!やRenta!などの電子書籍サイトと提携し、任意のキーワードでAPI検索した結果からアフィリエイトリンクを埋め込んだHTMLソースを作成する、というのが動作目標です。こちらもAmazonアソシエイトのツール同様、XAMPP+PHPでローカルPCで動けばよいものとします。XAMPPについては前回記事をご参照ください。APIリクエスト前の準備PDBに対応した広告主と提携したら、「広告作成」から広告スペースを作っておきます。これをしておかないとAPIを叩いてもレスがありません。これについて解説がなくって苦労した...。PDB用のトークンを確認します。「広告作成」をクリックした時に確認できます。特定の広告主からのレスのみを受けたい場合はeccodeを指定する必要があります。eccodeはこちらの「ec_code一覧表」から確認できます。これはフォームから具体的な書籍名や作者名を指定して検索します。APIをリクエストトークンとeccodeとキーワードの準備ができたら、バリューコマースAPIのURLに引数として設定し、PHPからリクエストします。具体的なURLはマニュアルの中に記載があります。そのURLの後ろに「?token=トークン&keyword=キーワード&ec_code=○○○’&page=1のように引数をつけます。最後の「page」は検索結果が分割された時のページ数です。必要に応じて可変にしましょう(2ページ目以降の結果が欲しい時など)。APIをパースリクエスト用のURLが出来たらfile_get_contentsでXMLファイルを受け取り、simplexml_load_stringで配列化します。この時に注意があるのですが、XMLの要素名が<vc:status>のようにコロンを含んだ形である場合があります。コロンが含まれていると普通のやり方では要素の中身が取り出せません。=$parsed_xml->channel->children(‘http://valuecommerce.com/pdb/rss/’);(※任意箇所で改行入れてます)のようにchildren()メソッドで名前空間名を指定する必要があるとのことです。パソコン初心者のサポートページPHPとSimpleXMLを用いて、バリューコマースウェブサービスを使ってみました。残念ながら、管理人には説明する能力はありません。このページは管理人のメモです。Qiitaこの記事は自サイトでリライトしました。qiita.comこちらの解説を参考に処理をしました。HTMLソースを整形XMLが解析できたら、あとはループで処理をします。「ハルロック」で検索するとハルロック全4巻のデータが返ってきます。要素数分くりかえすとこんな感じ(上記はRenta!のレスポンス例)。画像は確認用に表示しているだけです。textarea内にバリューコマースのアフィリエイトリンクを含んだHTMLソースがあります。こちらはclipboard.jsを使って「クリップボードにコピー」をクリックすると、ワンクリックでクリックボードにHTMLソースがコピーされる仕組み。詳しくは前回記事の後半をご参照ください。PV計測用の画像ソースを含める上記ソースに関する補足ですが、HTMLソース内にはPV計測用イメージのURLを含めておいた方が良いと思います。バリューコマースのアフィリエイトリンクを作ったことのある方はご存知かと思いますが、いずれも高さ・幅1pxもしくは0pxのPV計測用画像が設定されています。APIを使ったリンクにもそれが必要である、と書かれた資料は発見できなかったのですが、レスポンスにはその画像URLが要素「vc:pvImg」に含まれています。これは入れておいてね、ということだと判断できますのでこちらを整形したHTMLに入れておいた方が良いでしょう。画像に関するメモ基本的には以上で完成ですが、画像について少しメモ。バリューコマースのAPIではsmall・large・freeの三種類の画像要素を返してきます。三種類の全てにデータが入っているわけではなく、空の場合があります。BookLive!はfreeの画像のみ、Renta!はlargeの画像のみに画像URLが入っています。画像を表示させたりHTMLに埋め込みたい場合は、例えばlargeの要素が空ならばfreeを使う、などのように条件分岐の設定が必要です。まとめこんな感じで作ったBookLive!やRenta!のリンクを、Amazonアソシエイトをベースに作ったアフィリエイトリンク内に設置しています。今のところ埋め込みは手動ですが、ソースの生成自体はキーワード検索→クリップボードへのコピーと2段階で済むようになりました。以上、バリューコマースのAPIを使った商品リンク作成ツールのメモでした。バリュコマのAPIを使いたいけどよくわからない、という方のご参考になれば。バリューコマースを使ったことがないけどAPIを利用してみたい、という方は下記リンクより詳細をご確認ください。自分用に作ったAmazonアソシエイトリンク作成ツールのメモとあるSwitch難民のぼやき。コメントをキャンセルメールアドレスが公開されることはありません。*サイト上に表示された文字を入力してください。コメントデータの処理方法の詳細はこちらをご覧ください。2」2015.05.202017.09.06人気記事カルディで買った瓶詰ボルシチで「ウクライナのおふくろの味」を食す。2015.03.102017.10.11ラスポテトを食べる!屋台の味をお家で2015.11.032020.01.04卵アレルギーのための備忘録。卵成分がはいっている意外な食べ物2015.05.242019.10.01女探偵は砕けない。ミステリー小説「葉村晶シリーズ」レビュー2018.10.162019.12.11「プチプチ」の正式名称って何?2014.10.052018.09.27UNO(ウノ)もいいけどONO(オノ)もおもしろいよ2016.03.112020.01.04サンマルコのカレー、独特な薬味の謎。4種類を食べ比べてみる2015.11.292017.08.31新着記事ウィルキンソン・VOXなど炭酸水・強炭酸水の飲み比べメモ。オススメは?2019.06.132019.06.15語彙力アップ!に学研「ことば選び辞典」。コンパクトで気軽に読めるシリーズ2019.02.04コレステロール値が気になる!ウエルシアでセルフ血液検査をやってみた2019.02.01サバ水煮缶でヘルシーメニュー。基本のトマトソース」で作るミートソースがウマイ。おいしいものが大好き。マニアックな漫画の感想を増やしていきたい所存。2」2015.05.202017.09.06人気記事カルディで買った瓶詰ボルシチで「ウクライナのおふくろの味」を食す。2015.03.102017.10.11ラスポテトを食べる!屋台の味をお家で2015.11.032020.01.04卵アレルギーのための備忘録。卵成分がはいっている意外な食べ物2015.05.242019.10.01女探偵は砕けない。ミステリー小説「葉村晶シリーズ」レビュー2018.10.162019.12.11「プチプチ」の正式名称って何?2014.10.052018.09.27UNO(ウノ)もいいけどONO(オノ)もおもしろいよ2016.03.112020.01.04サンマルコのカレー、独特な薬味の謎。4種類を食べ比べてみる2015.11.292017.08.31新着記事ウィルキンソン・VOXなど炭酸水・強炭酸水の飲み比べメモ。オススメは?2019.06.132019.06.15語彙力アップ!に学研「ことば選び辞典」。コンパクトで気軽に読めるシリーズ2019.02.04コレステロール値が気になる!ウエルシアでセルフ血液検査をやってみた2019.02.01サバ水煮缶でヘルシーメニュー。基本のトマトソース」で作るミートソースがウマイ。おいしいものが大好き。マニアックな漫画の感想を増やしていきたい所存。2013年8月タイトルとURLをコピーしました。