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
解決日時
Q&A サイトの情報表示
Yahoo知恵袋を任意のキーワードで検索し
ベストアンサーを表示するというもの
使うAPIは
質問検索API
で
Yahoo知恵袋
http://chiebukuro.yahoo.co.jp/
ここの質問を回答データから
キーワード検索して
マッチするQ&Aのデータを取得、表示する
カテゴリとか並び方もパラメータ指定できるため
サイトや記事に関連するキーワードで検索して
最新口コミ情報とかQ&Aサイトのようにできる
もう少しスキルがあがってくれば
おそらくはもっといろいろな情報収集ツールに改造できそう
アプリ開発とかweb サービス関連の開発のヒントになるかもしれない
ただ、このAPIを使うためには
ニューストピックのときのように
Yahooデベロッパー登録して
アプリIDを取得する必要がある
このYahooデベロッパー登録は
http://developer.yahoo.co.jp/
から取得可能
あと、提供元は
質問検索API
http://developer.yahoo.co.jp/webapi/chiebukuro/chiebukuro/v1/questionsearch.html
になります
あと
Yahoo!知恵袋Web APIは、
24時間中1アプリケーションIDにつき
50000件のリクエストが上限となっています
使いすぎには注意が必要です
Simple API Wikipedia API
ベースURLは
http://wikipedia.simpleapi.net/api
リクエストパラメータは
keyword
キーワードの指定
q
キーエアー℃の指定
実はkeyword と同じ
output
データの出力形式を指定
デフォルトはXML
レスポンスフィールドの
フィールド名は
url
wikipedia の項目ページのURL
title
項目のタイトル
body
本文のダイジェスト
length
本文の長さ
となっている
これらを使って
wikipedia から任意のキー輪小渡にマッチした
記事を検索し、その内容を表示するようにする
このためには、まずリクエストURLを作成する
ベースURLの
http://wikipedia.simpleapi.net/api
にリクエストパラメータをつなげて
データ取得用のリクエストURLを組み立てる
ただし、keyword に指定する値については
日本語対応するために
URLエンコードする
URLエンコードには
urlencode() を使う
取得するデータ出力形式は
wordpress で処理しやすいようにPHPにする
これらを考慮し、リクエストURLを作成すると
http://wikipedia.simpleapi.net/api?keyword=URLエンコードしたキーワード&output=php
となる
あとは、取得したレスポンスフィールドのうち
使うものを echo で表示していく
表示する時には
foreach() で1つずつ代入しながらループして
繰り返し表示していく
表示内容は
項目ページのURL
result->url
項目のタイトル
result->title
本文ダイジェスト
result->body
となる
wikipedia の情報を表示
これはキーワードを固定して
wikipedia に掲載された情報を検索、表示するう
これは専門用語辞典などの作成に向いている
これも、ユーザ登録はなしで使える
Simple API Wikipedia API
これが wikipedia の項目から検索して
マッチする項目のデータを取得表示できるAPI
ちなみに wikipedia のURLは
http://ja.wikipedia.org/
記事関連のキーワードでデータ取得して表示するけっど
取得できるのは
項目の冒頭部のダイジェストのみ
画像、表組みなどは再現できないので注意
ユーザ登録不要、商用、非商用どちらも
できるらしいので、使い道は多そうです
もっとも、途中から規約が変わる可能性もありますが
ちなみに、このAPIは
wikipedia 公式APIではなく
株式会社ユーザーローカルが運営するサービスのAPI
のため
最新の wikipedia のデータとは内容が異なることもあるので注意
Simple API WIkipedia の提供サイトは
http://wikipedia.simpleapi.net/
wordpress でソースコード表示を便利にするプラグイン
wordpress でソースコードを表示するときに楽になる
プラグイン
それが
SyntaxHighlighter Evolved
今回参考にさせていただいたのは
WordPressでソースコードに色をつけるプラグインの使い方:SyntaxHighlighter Evolved
です
プラグインを新規追加して
SyntaxHighlighter Evolved
をインストールし、有効化するだけです
あとは、ソースを書き込むときに
各プログラミング言語のショーとコードで囲みます
ショートコードに関しては
「SyntaxHighlighter Evolved」で利用できるショートコード一覧
を参考にさせていただきました