SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

C#からYouTube APIを使って動画情報を取得する

C#でYouTube APIのラッパークラスを作成する

  • このエントリーをはてなブックマークに追加

YouTubeでは動画情報を取得できるAPIを公開しています。C#でYouTube APIのラッパークラスを作成しておけば、簡単にYouTubeの動画情報が利用できるようになります。

  • このエントリーをはてなブックマークに追加

はじめに

 動画共有サイトのYouTubeが公開しているAPIを利用しやすくするために、C#のラッパークラスを作成します。

YouTube API

 YouTubeが公開しているAPIについては、下記を参照してください。

対象読者

  • C#およびネットワークプログラミングが分かる。
  • ウェブサービスを利用したマッシュアップに興味がある。

YouTubeのAPIの分析

 YouTubeが提供するAPIは以下のものがあります。

  • get_profile
  • list_favorite_videos
  • list_friends
  • get_detail
  • list_by_tag
  • list_by_user
  • list_featured
  • list_by_related
  • list_by_playlist
  • list_popular
  • list_by_category_and_tag

 それぞれのAPIによって取得できるXMLのデータの種類はいくつかあります。取得できるXMLのデータには共通部分があります。例えばレスポンス情報を格納するurl_responseタグは全ての種類のXMLデータに含まれています。

 添付したファイルの中にAPI・「list_featured」を呼び出した際に取得できるXMLデータをテキストファイルに出力したものがあります(YouTubeSimple.txtファイル)。

 このファイルの中から開発者にとって有用な部分を取り出すと

<video>
  <author>SteveAgee</author>
  <id>oc9q1H6Y6QM</id>
  <title>VIDEO BLOG #2 - HATS</title>
  <length_seconds>99</length_seconds>
  <rating_avg>3.00</rating_avg>
  <rating_count>58</rating_count>
  <description>a blog about my hats.  have fun</description>
  <view_count>653</view_count>
  <upload_time>1163973051</upload_time>
  <comment_count>42</comment_count>
  <tags>hats video blog steve agee stupid waste</tags>
  <url>http://www.youtube.com/?v=oc9q1H6Y6QM</url>
  <thumbnail_url>
    http://sjc-static12.sjc.youtube.com/vi/oc9q1H6Y6QM/2.jpg
  </thumbnail_url>
  <embed_status>ok</embed_status>
</video>

 の部分となります。

 APIの中には同じデータが取得できるものもあり(例えば、list_featuredとlist_popular)、全てのAPIについて分類すると4種類になります。ここでは、「UserProfileRecord」「FriendRecord」「ListRecord」「DetailRecord」というように命名します。また、それぞれに含まれる属性は以下の図のようになります。

APIと結果セット
APIと結果セット

 APIと取得できるデータの種類の対応は次のとおりです。

APIと結果セット
APIと結果セット

 これらの結果セットのうち、例としてlist_featuredとget_detailの結果セットをDataSetに読み込んだ場合のDataSetスキーマ図を以下に示します。

list_featured
list_featured
get_detail
get_detail

 Visual Studioを持っているのであれば、ウォッチウィンドウを利用するとスキーマを調べやすいと思います。

list_featuredを呼び出したときのDataSet内の各値をウォッチウィンドウで表示
list_featuredを呼び出したときのDataSet内の各値をウォッチウィンドウで表示

 今回の記事ではlist_featuredを利用したときを例にして説明をしていきます。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
クラスのデザイン

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
特集記事連載記事一覧

もっと読む

この記事の著者

Higty(Higty)

C#マスターになるべく勉強中の身分です。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1155 2007/04/23 08:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング