DMM API ver3.0リリース
2016.02.25【【商品情報API ver3.0 リリースのご案内】】
平素はDMMサービスのPRにご協力賜り、誠にありがとうございます。
「商品情報API ver3.0」をリリース致しました。
・個別商品に関するAPIを「商品情報API」に統合
・フロアAPIを追加
・女優検索APIを追加
・ジャンル検索APIを追加
・メーカー検索APIを追加
・シリーズ検索APIを追加
・作者検索APIを追加
※「商品情報API ver3.0」のリリースに伴い、2016年7月31日をもちまして「商品情報API ver2.0」のご提供を終了させていただきます。
「DMM API ver3.0」がリリース。「ver2.0」は2016年7月末で終了。基本的な使い方は2と同じ。
<変化点>
・出力方法が「xml」に加え「json」も選択可能
・キーワードはUTF-8でOK。謎の「euc-jp」縛りは解除
・タイムスタンプ不要
・アダルトsiteが「DMM.R18」に変更
・floorが微妙に変更。(フロアAPIより確認)
・一部サンプル画像の使用範囲が縮小(動画AVとPCゲームくらいでしかまともに取得できなくなっている。)
・商品説明コメントが取得不可になる
サンプルコード(人気商品ランキング)
<?php $api_id = "XXX";//利用規約をご確認のうえ、API利用登録を行ってください。API IDが発行されます。 $affiliate_id = "XXX-990";//アフィリエイトIDは末尾を990~999に設定してください。末尾が990~999以外ではエラーとなります。 $site = "DMM.R18";//一般(DMM.com)かアダルト(DMM.R18)か $service = "";//検索対象サービスを指定します $floor = "";//検索対象フロアを指定します $hits = "10";//検索結果の件数を指定します。 $sort = "rank";//初期値:rank $keyword = "";//商品タイトルなどからキーワード検索をします。 $xml = "https://api.dmm.com/affiliate/v3/ItemList?api_id=$api_id&affiliate_id=$affiliate_id&site=$site&service=$service&floor=$floor&hits=$hits&sort=$sort&keyword=$keyword&output=xml"; $xml = simplexml_load_file($xml, 'SimpleXMLElement', LIBXML_NOCDATA); //var_dump($xml); for ($i = 0; ; $i++) { $item = $xml->result->items->item; $title[$i] = $item[$i] ->title; $link[$i] = $item[$i] ->URL; $price[$i] = $item[$i] ->prices->price; $gazo[$i] = $item[$i] ->imageURL->large; $actress[$i] = $item[$i] ->iteminfo->actress->item->name; $series[$i] = $item[$i] ->iteminfo->series->item->name; $sampleMovieURL[$i] = $item[$i] ->sampleMovieURL->size_720_480; if ($title[$i] == "") {break;} $art = "<div class='az'> <a target='_blank' href='$link[$i]$id'><img src='$gazo[$i]' alt='$title[$i]' title='$title[$i]' /></a> ◆タイトル:<a target='_blank' href='$link[$i]'>$title[$i]</a><BR> ◆女優名:$actress[$i]<BR> ◆価格:$price[$i]<BR> ◆シリーズ:$series[$i]<BR> ◆サンプルムービー:<a target='_blank' href='$sampleMovieURL[$i]'>サンプル[720×480]を視聴する</a> </div>"; echo $art; }//▲for ?>
→DMMAPI表示テスト
「XML」で出力する場合、「simplexml_load_file()」で処理。
「json」で出力する場合は、「json_decode()」で処理↓
*** $json = "https://api.dmm.com/affiliate/v3***&output=json"; $json = file_get_contents( $json ); $arr = json_decode($json); for ($i = 0; ; $i++) { $item = $arr->result->items; $title[$i] = $item[$i] ->title; ***
リクエストパラメータは商品情報APIリファレンス(https://affiliate.dmm.com/api/v3/itemlist.html)から確認。
関連リンク
DMM APIがリニューアルされたみたい[Qiita](http://qiita.com/dimgraycat/items/85aef52f75ad58aa123b)
DMM APIを使ってライブドアブログに自動投稿してみる[はてな](http://anond.hatelabo.jp/20160326071203)