●動画取得API(YouTube API)
動画取得APIといえば、YouTubeAPIなのですが、
そういえば、このブログでは取り上げていなかったので、ご紹介。
API ドキュメント
がトップページで、今回紹介するタグ検索APIが
youtube.videos.list_by_tag (API 関数リファレンス)
とってもシンプルなので、悩みどころはないでしょう。
使用に当たっては、開発者IDが必要なので、YouTubeのアカウントを持っていない場合は、アカウントをまず取得してから、ということになります。
--
それでは、サンプル
function getVideoYoutube($keyword,$per_page=10){
$ret_array = array();
$req = 'http://www.youtube.com/api2_rest?method=youtube.videos.list_by_tag&dev_id='.「あなたのYouTube開発者ID」.'&per_page='.$per_page.'&tag='.urlencode($keyword);
$xml = simplexml_load_file($req);
foreach($xml->video_list->video as $video) {
$video_array = array();
if( !empty($video->length_seconds) && (0<$video->length_seconds) ) {
$video_length_min = $video->length_seconds / 60;
$video_length_sec = $video->length_seconds % 60;
}
$video_array['title'] = $video->title;
$video_array['url'] = $video->url;
$video_array['thumbnail'] = $video->thumbnail_url;
$video_array['author'] = $video->author;
$video_array['description'] = $video->description;
$video_array['time_min'] = (int)$video_length_min;
$video_array['time_sec'] = (int)$video_length_sec;
$ret_array[] = $video_array;
}
return($ret_array);
}
使い方は、
foreach(getVideoYoutube('遊園地') as $video){
print '<a href="' . $video['url'] . '">' . $video['title'] . '</a><br>';
}
こんな感じでコールすると、遊園地にマッチする動画へのリンクが作成できます。
もちろん、サムネイルを表示してもいいし、埋め込み動画にしてもいいし、使い方は自分次第です。
関数の戻り値を配列にしているのには理由があって、他にも動画取得APIがあるので、戻り値を同じようにしておけば、使い回しが効くからです。
他の動画取得APIだと、
キーワード検索 - AmebaVision APIドキュメント
なんかがあります。
当然、YouTubeとはXML返却値が異なるわけですが、配列で返すようにしておくことで、YouTubeだろうが、Amebaだろうが、同じように扱えるわけです。
経験の少ないプログラマだと、このあたりまで頭が回らなくって、似たようなルーチンを作っちゃったりして、そりゃあ、残業かさむわな。
--

Comments
コメント入力は停止しています
海外からと思われるコメントスパムが横行しているため、全記事のコメント入力を停止しています。メッセージのある方は、ホームページの一番下に連絡欄がありますので、そちらからお願いします。