SSブログ

[続]Youtube Data APIを使う [Youtube]

では、前回インストールしたZend Gdataを使用したYoutube APIの使用方法を見て行こう。

<?php
set_include_path('/geo_cgi_private/');

require_once( "Zend/Loader.php" );
Zend_Loader::loadClass('Zend_Gdata_YouTube');

//リクエストURL作成
$req = "http://gdata.youtube.com/feeds/api/videos?";
$req .= "&vq=".urlencode($keyword);//エンコードKEYWORD
$req .= "&orderby=relevance_lang_ja&max-results=10";

//Zend_Gdata_YouTubeクラスを作成
$yt = new Zend_Gdata_YouTube();

//APIリクエストの実行
$videoFeed = $yt->getVideoFeed($req);

//動画を取得
foreach ($videoFeed as $videoEntry) {
  $vTitle[$i] = $videoEntry->getVideoTitle();//動画タイトル
  foreach ($videoEntry->mediaGroup->content as $content) {
    if ($content->format == "5")
    {//この動画用の埋め込み型プレーヤー (SWF) への HTTP URL
      $vSrc[$i] = $content->url;
    }
    if ($vSrc[$i] != "") $i++;
  }
}

?>


このソースで動画のタイトルと動画のURLが取得できます。

HTMLでは以下のような形でYoutubeの動画を貼り付けることが出来ます。
<object width="380" height="330">
<param name="MOVIE" value="{動画のURL}">
<embed src="{動画のURL}" type="application/x-shockwave-flash" width="380" height="330"></object>

私はSmartyを使用しているのですが、どの様に表示されるかは以下を見て下さい。

Youtube APIサンプルページ
タグ:動画 Zend YouTube
nice!(0)  コメント(11)  トラックバック(0) 
共通テーマ:日記・雑感

Youtube Data APIを使う [Youtube]

Youtubeで動画を検索して、自分のホームページに貼り付けたいと思います。

どのWEB APIを使う場合もそうですが、まずは基本のURLを知らなければいけません。Youtubeの場合は以下ですね。

 http://gdata.youtube.com/feeds/api/videos?

次にパラメータです。Youtubeでは以下の基本パラメータがあります。

Standard Google Data API parameters
 名前説明 
 alt レスポンスデータのフォーマット指定です。私は今のところXMLしか使わないのでデフォルトのatomを使います。その他には、rssjson があります。
 author 特定の YouTube ユーザーがアップロードした動画に検索を限定します。必要ないですね。
 max-results検索結果の最大の件数を指定します。デフォルト値は 25 で、最大値は 50 ですが、10が推奨されていますね。
 start-index検索結果のセットに最初に含める結果インデックスを指定します。1から始まります。たとえば 10 件ずつの 2 番目のセット (11~20 番目の結果) を要求するには、start-index パラメータを 11 に設定し、max-resultsパラメータを 10 に設定します。 

最後はカスタムパラメータです。使えそうなものだけ紹介します。

Custom parameters for the YouTube Data API
 名前説明 
 vq 検索キーワードを指定します。
orderby 検索結果のセットで動画を並び替えるのに使用する値を指定します。relevancepublishedviewCountratingが指定できます。
今回は日本語に関係するものを指定しますので、relevance_lang_jpを使用します。

まずはこれくらい押さえておけば大丈夫だろう。
その他の詳細を知りたければ、以下のサイトで確認できます。

動画の検索
nice!(0)  コメント(10)  トラックバック(0) 
共通テーマ:日記・雑感

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。