Amazon Advertising API

https://affiliate.amazon.co.jp/gp/advertising/api/detail/main.html
へアクセスしてアカウントを作成します
注意点は、Amazon アソシエイトで登録した
メールアドレスと同じにするということ
サポート関連が面倒になることを回避するためです
ちなみに、すべて登録ページは英語での入力になります
http://www.blog-ouendan.com/amazonasosieito.html
を参考に入力することができました
一番悩んだのが、電話番号
携帯なので、どうしようかということで検索
個人輸入時の電話番号入力について
を参考に、
お持ちのケータイの番号が仮に090-1234-5678だとしたら、
+81-90-1234-5678と書くことになる
ということなので、
この方法でクリアしました
英語の入力は今後もありそうなので
メモしてみました
Address Line 1
(住所1) 番地など (通常、市区町村名の後に表示される住所) を記入 (例:2-15-1, Shibuya)
Address Line 2
(住所2) アパート・マンション・ビル名などを記入
City
市区町村名を記入
State, Province or Region
都道府県名を記入
ZIP or Postal Code
郵便番号を記入
Country
(国名) 日本の場合、ドロップダウンメニューから “Japan” を選択
Phone Number
(電話番号) 国番号から電話番号を記入
(例:81-3-1234-5678)
Company Name
会社名を記入 (法人の場合)
Website URL
Web サイトの URL を記入
Website or Application Description
API を利用予定の Web サイトやアプリケーションの簡単な説明を英語で記入

楽天のショッピングサイトの商品を表示 その2

リクエストパラメータ確認
まず、楽天の商品検索APIを使うため
applicationId
アプリID
keyword
キーワード
を指定する
そして、wordpressてPHPてWebAPIを使うので
format
は今回は、xmlを指定
その他のパラメータとして
hits
取得件数の指定
sort
並び方
最低金額
minPrice
最高金額
maxPrice
商品画像の有無を指定する
imageFlag
除外キーワード指定の
NGkeyword
を使って、リクエストURL作成
ベースURLへ
?
をつけて、パラメータは
&
てつなげて作成する
並び順は、
-reviewAverage
てレビューの低い順にしてみます
ベースURLは長いため
変数
$baseurlへ格納します
もし、いくつかベースURLがあるなら
わかりやすいように
$rakyten_baseurl
とするとわかりやすくなります
これで、リクエストURL作成すると
$baseurl?applicationId=アプリID&keyword=キーワード&NGkeyword=除外キーワード&format=xml&sort=-reviewAverage
ただし、sortの値をurlエンコードする必要があります
レスポンスフィールドのうち、使用するてーたの確認
商品の一覧表示に使うのは以下のデータを使います
count
検索結果の総数
Items->item->itemName
商品名
Items->Item->catchcopy
キャッチコピー
Items->Item->itemPrice
商品価格
Items->Item->itemURL
商品のURL
Items->Item->mediumImageUrls->imageUrl([0])
商品画像
Items->Item->reviewCount
レビュー件数
Items->Item->reviewAverage
レビューの平均点数
Items->Item->shopName
店舗名
Items->Item->shopUrl
店舗URL

楽天のショッピングサイトの商品を表示

楽天のショッピングサイトの商品を表示
楽天市場の商品の中から
キーワードにマッチする商品を表示することができます
それを行うのが
楽天商品検索API2
これは楽天
http://www.rakuten.co.jp/
の中から商品情報を表示することができます
これも価格帯や送料無料などで絞り込みができます
除外キーワードを設定してNOT検索も可能
楽天商品検索API2を利用するには
楽天Webサービスへ登録して、アプリIDが必要になります
楽天商品検索API2の詳細は
http://webservice.rakuten.co.jp/api/ichibaitemsearch/
へ記載されています
ベースURLは
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20120723
パラメータは
applicationId
アプリID
これは必須
そして、keyword, genreId , itemCode
のどれか1つが必須になる
というより、このどれかを指定しないと
商品の検索ができない
keyword
キーワード
genreId
ジャンルID
ジャンル名、ジャンルの親子関係を調べたい場合
楽天ジャンル検索API2
http://webservice.rakuten.co.jp/api/ichibagenresearch/
を参照
itemCode
商品コード
これら以外のパラメータとして
affiliateId
アフィリエイトID
format
初期値はjson
XMLにしたいなら xml を指定
hits
取得件数の指定
デフォルトは30
設定は1~30で設定可能
sort
検索結果の並び替えに使用
かなり細かく設定できる
+affiliateRate
アフィリエイト利率順(多い順)
-affiliaateRate
アフィリエイト利率順(少ない順)
+reviewCount
レビュー件数の多い順
-reviewCount
レビュー件数の少ない順
+reviewAverage
レビューの平均で多い順
-reviewAverage
レビューの平均で少ない順
+itemPrice
価格の高い順
-itemPrice
価格の安い順
+updateTimestamp
商品更新日の日時の新しい順
-updateTimestamp
商品更新日の日時の古い順
standard
楽天標準ソート順
これがデフォルト
minPrice
検索する最低価格を設定
maxPrice
検索する最高値の設定
availability
在庫の状態指定
0なら指定なし
1なら在庫があるものだけになる
デフォルトは1
imageFrag
しょうひんの画像の有無
0なら画像の有無を気にしない(デフォルト)
1なら画像があるものだけにする
orFlag
複数キーワードで検索するときの方法の指定
0ならAND検索(デフォルト)
1ならOR検索
NGkeyword
検索から除外するキーワード設定
これはURLエンコードする必要あり
postageFag
送料の設定
0なら有料を含む
1なら送料無料のみにする
これらのAPIを使うメリットは
アフィリエイトサイト作成と
自分なりに使いやすいサイトを構築できるということ
おそらく、スマートフォンのアプリなどにも使えるはず
続いて、以下はレスポンスフィールド関連
こちらは、サイトなどに内容表示するときに使います
count
検索結果の総商品数
itemName
商品名
catchcopy
キャッチコピー
itemPrice
商品価格
itemCaption
商品の説明
itemUrl
商品URL
affiliateUrl
アフィリエイトURL
ただし、パラメータにアフィリエイトIDが入っているときのみ
imageFlag
商品画像の有無
0なら画像なし
1なら画像あり
ifなどで判別するのに使える
smallImageUrls
商品画像(小)のURL
最大3枚を配列 imageUrl で返す
mediumImageUrls
商品画像(中)のURL
最大3枚を配列 imageUrl で返す
availability
販売の可否
0なら販売不可
1なら販売可
taxFlag
消費税について
0なら税込み
1なら税別
postageFlag
送料について
0なら送料込み
1なら送料別
reviewAverage
レビューの平均点数
shopName
店舗名
shopUrl
店舗URL

yahoo ショッピング商品検索API 仕様

yahoo ショッピング商品検索API 仕様
今回はXMLで実験してみました
詳しい解説は
http://developer.yahoo.co.jp/webapi/shopping/shopping/v1/itemsearch.html
に掲載されています
ベースURLは
http://shopping.yahooapis.jp/ShoppingWebService/V1/itemSearch
パラメータは
appid
必須
アプリのID
query
検索キーワード
ただし、UTF-8エンコード必須
type
検索のタイプ
all すべての文字列を含む(こっちがデフォルト)
any 検索文字のうちいずれかを含む
jan
JANコードで商品検索
isbn
ISBNコードで商品検索
本を探すときに使う
store_id
店のIDを指定して検索
店の絞り込みに使う
http://store.shopping.yahoo.co.jp/○○○○/index.html
の○○○○の部分のURL
http://shopping.yahoo.co.jp/stores
でお店の名前を選ぶと
でてきます
例えば、
12月度の月間ベストストア 第1位!
の中で
世界のお店ニューヨークの場合だと
http://store.shopping.yahoo.co.jp/newyork19892005/index.html
となっているので、
newyork19892005
の部分がストア名に該当します
price_from
再低価格の設定
price_to
最高値の設定
hits
取得する検索結果の数
デフォルトは20
最大で50
sort
並び替えの設定
ただし、URLエンコードする必要があります
具体的な設定は
+price
価格の安い順
-price
価格の高い順
+name
ストア名順(昇順)
あいうえお順
-name
ストア名順(降順)
あいうえお順の逆
+score
おすすめ順(昇順)
おすすめ度の高いものから
-score
おすすめ順(降順)
おすすめ度の低いものから
+sold
売れ筋順(昇順)
売れているものから
-sold
売れ筋順(降順)
売れていないものから
+review_count
レビュー(昇順)
評価の高いものから
-review_count
レビュー(降順)
評価の低いものから
デフォルトは +score になっています
availability
在庫の設定
在庫があるものだけにしたいなら
availability=1 にする
discount
セール品への絞り込み
セール中商品だけ表示したいなら
discount=1 にする
shipping
送料無料の設定
shipping=1 で送料無料となります
あとは、使いそうなものとして
payment
これは支払方法の絞り込みにつかいます
creditcard
ならカード支払可能
となります
ほかにもパラメータはいくつかあります
続いて、レスポンスフィールド
totalResultsAvailable
検索結果の総数
totalResultsReturned
検索結果のうち、かえってきた検索結果の数
firstResultPosition
最初の検索結果が何個目にあたるかということ
最初は1になります
/ResultSet/Result/Hit/Name
商品名
/ResultSet/Result/Hit/Url
商品URL
/ResultSet/Result/Hit/Description
商品の説明
/ResultSet/Result/Hit/Headline
キャッチコピー
/ResultSet/Result/Hit/Availability
在庫の有無
instock 在庫あり
outofstock 在庫なし
/ResultSet/Result/Hit/JanCode
JANコード
/ResultSet/Result/Hit/IsbnCode
ISBNコード
書籍に使う
/ResultSet/Result/Hit/Model
型番
/ResultSet/Result/Hit/Store/Url
店のURL
/ResultSet/Result/Hit/Store/Name
店の名前
/ResultSet/Result/Hit/Store/Ratings/Rate
お店の評価
/ResultSet/Result/Hit/Store/Ratings/Count
評価した人数
/ResultSet/Result/Hit/Image/Small
76×76サイズの画像URL
/ResultSet/Result/Hit/Image/Medium
146×146サイズの画像URL
/ResultSet/Result/Hit/Review/Count
商品のレビュー件数
/ResultSet/Result/Hit/Review/Rate
商品レビューの平均
/ResultSet/Result/Hit/Review/Url
商品レビューページのURL
/ResultSet/Result/Hit/Price
価格
/ResultSet/Result/Hit/PriceLabel/FixedPrice
定価
/ResultSet/Result/Hit/PriceLabel/SalePrice
セール価格
/ResultSet/Result/Hit/Category/Current/Name
現在カテゴリ名
/ResultSet/Result/Hit/Point/Amount
ポイント数
これらを使って
リクエストURLを組み立てます
例えば、
検索キーワードを指定して商品を探し
その中で、在庫があるのだけを表示するようにします
この場合
リクエストURLは
http://shopping.yahooapis.jp/ShoppingWebService/V1/itemSearch?appid=アプリID&query=検索キーワード&availability=1
というようになります
なお、検索キーワードは
URLエンコードする必要があります

yahoo ショッピング商品検索API

yahoo ショッピング商品検索API
を使うことで、
Yahooショッピングに登録されている商品を
キーワード検索して
マッチした商品の情報を表示できるようになります
ちなみに YahooショッピングのURLは
http://shopping.yahoo.co.jp/
このAPIを鵜買うことで
商品名
商品画像
価格
商品の平均評価などを取得する以外に
価格帯の上限、下限の設定、送料無料のみ
という絞り込んで表示することができます
Yahooショッピング商品検索APIを使うのにも
いままで使っているAPIと同じように
アプリIDが必要になります
このYahooデベロッパー登録は
http://developer.yahoo.co.jp/
から取得可能です
今回のAPIについての詳細は
http://developer.yahoo.co.jp/webapi/shopping/shopping/v1/itemsearch.html
にかかれています
形式は
XML
JSONP
以外に
PHPserialize があります

サイトのサムネイル画像作成

サイトのサムネイル画像作成
Simple API ウェブサイトサムネイル作成API
を使うことで、任意のURLを指定して
サイトのサムネイル画像を自動生成できます
すでにサーバー側に生成済みのサムネイル画像があるなら、それを使い
もしないなら新規にサムネイルを作成する間は
別の画像が表示されます
API提供元は
http://img.simpleapi.net/
になります
続いて、APIの基本仕様について
ベースURLは
http://img.simpleapi.net/small/
リクエスト方法は簡単で
サイトに掲載されているように
ベースURLの後に
サムネイル画像にしたいサイトのURLをつなげるだけです
例えば、yahoo なら
http://img.simpleapi.net/small/http://www.google.co.jp/
となります
ちなみに、書籍のサンプルでは
explode() があるけど、これは
文字列を区切るときに使う関数です
例えば、改行で区切るなら
explode(“\n”,inputword);
これで、inputword で渡された文字列に
改行があれば、そこで区切るようになります
参考URLは
http://phpspot.net/php/man/php/function.explode.html
参考書籍をみてわからないときには
その関数を検索してみると
いろいろなブログなどで解説されているので
理解しやすくなります

YouTube Data API 基本仕様

YouTube Data API 基本仕様
ベースURLは
http://gdata.youtube.com/feeds/api/videos
リクエストパラメータは
vq
検索キーワード
ただし、URLエンコードが必要
maxresults
取得する動画の数を指定
初期値なら25
最大で50
orderby
検索結果の並び替えの指定
初期値は関連順で表示
具体的には
relevance
関連順
published
投稿が新しい順
viewCount
視聴回数の多い順
rating
評価の高い順
次にレスポンスフィールド
title
動画タイトル
content
動画内容の説明
media:player
属性 url で動画のURL
media:thumbnail
属性 url で動画のサムネイルのURL
詳しい解説は
リファレンス ガイド: Data API プロトコル
https://developers.google.com/youtube/reference?hl=ja#youtube_data_api_tag_media:title
に掲載されています
これらを参考にリクエストURLの組み立てをします
ベースURLは
http://gdata.youtube.com/feeds/api/videos
でも長いので、変数に格納
$baseurl =”http://gdata.youtube.com/feeds/api/videos”;
キーワードは
vq=キーワード
取得する動画の数を20にするなら
max-results=20
視聴回数の多い順に並び替えということで
orderby=viewCount
これらのパラメータを組み合わせてみると
$baseurl?vq=検索キーワード&max-results=20&orderby=viewCount
というようになります
ただ、このYouTube Data API
については、いままで使ってきたAPIとは異なり
media:player というタグがあるので
これは
simplexml_load_file()
でパースすることができません
ちなみに、media:player のようなものを
名前空間プレフィックスといいます
これの対処方法は
children()を使うこと
media:player なら
children(‘media’,TRUE)->player
というようにして対処します
これで、いつものように下層データを取得することができます
さすがに毎回これを書くのも面倒なので
これもベースURLみたいに変数に格納しておくと
楽になります
たとえば、動画URL取得なら
$video_url = esc_url( $video->children(‘media’,TRUE)->group->children(‘media’,TRUE)->player->attributes()->url );
途中に esc_url()
がありますが、これは
URLをサニタイズするための関数です
URLのサニタイズというのは
不正な形式を受け付けないようにすることで
サイトに害を与えるのを予防することで
htmlspecialchar()
とかとおなじようなものです
この関数のわかりやすい説明が
esc_urlとhome_url
リファレンス的なものだと
http://elearn.jp/wpman/function/esc_url.html
が参考になります

キーワード関連動画の表示

キーワード関連動画の表示
YouTube を任意のキーワードで検索して
マッチした動画のタイトルや
サムネイル画像、内容の説明などをサイトで表示できる
ようになります
それが
YouTube Data API
取得できる情報は
単体の動画
人気の動画一覧
などなど
詳しくは
https://developers.google.com/youtube/reference?hl=ja
に載っています
また、YouTube Data API については
動画サイト
ドットインストールにて
YouTubeでジュークボックスを作ろう
http://dotinstall.com/lessons/youtube_jukebox_js
というものもありますので
こちらも試してみるとおもしろいと思います

任意のキーワードとカテゴリで&A表示

任意のキーワードとカテゴリで&A表示
Yahoo知恵袋の質問の中から
任意のキーワードとカテゴリにマッチした質問と
ベストアンサーを表示するときのメモ
まず、リクエストパラメータの確認
質問検索APIではパラメータにappid が必須になる
今回は、ほかに
検索キーワードの query
並び順を変える sort
取得結果を表示する results
を使う
それでは、リクエストURLの作成
いつもどおり
ベースURLへ?をつけて
このあとにパラメータを&でつなげて表示
今回の設計は
キーワード設定
回答数が多い順にソートして
鵜3から3つの質問と回答を表示する
ではこれを書くと
ベースURL?appid=アプリID&query=検索キーワード&results=検索結果の数
そして、 echo で表示するレスポンスフィールドは
Status->statusCode
実行結果のステータス
0か-1
Result->Question->Content
質問の本文
Result->Question->BestAnswer
ベストアンサー
Result->Question->Url
質問詳細ページのURL

Yahoo 知恵袋のAPIのメモ

Q&Aサイト APIの基本仕様
ベースURLは
http://chiebukuro.yahooapis.jp/Chiebukuro/V1/questionSearch
XMLで取得するタイプです
リクエストパラメータは
appid
yahooデベロッパーネットワークで登録したアプリID
これは必須
query
検索キーワード
たどし、日本語の場合、UTF=8エンコードご必要
これも必須パラメータ
type
検索の種類の指定
以下のどれかを指定
all
デフォルト設定、すべての文字列
any
文字列のうち、いずれかを含む
phrase
文字列を文章として含む
category
カテゴリIDの指定
これで、検索するカテゴリーを絞り込める
指定するときには数値になる
これは、カテゴリーページのURL末尾のところと同じ
もし、インターネットカテゴリーなら
2078297392
カテゴリー一覧をみたいなら
http://list.chiebukuro.yahoo.co.jp/dir/dir_list.php
にあるので、ここから調べます
condition
質問の状態を指定
これで、回答済みとか、回答中などを絞り込める
all
全部、これがデフォルト
open
回答受付中
vote
投票受付中
solved
解決済み
sort
結果の並び順を指定
-posteddate
デフォルト設定で、質問日時の新しい順
+poteddate
質問日時が古い順
-amscount
回答数が多い順
+anscount
回答数が少ない順
そして、レスポンスフィールド
esultset
他のレスポンスフィールドすべてを含むフィールド
以下の属性を持っています
totalResultsAvailable
検索結果の総数
totalResults Returned
検索結果のうち、返却された検索結果の数
firstResultPosition
最初の検索結果が何個目になるか
Status
実行結果のステータスです
0 なら正常終了
-1 なら異常あり
このあたりは、プログラミングのときとおなじ要領
Content
質問本文
BestAnswer
ベストアンサー
Url
詳細ページのURL
AnsCount
回答数
PostedDate
回答日時
SolvedDate
解決日時