Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Visual BasicによるTwitterプログラミング
.NETプラットフォームを使ってTwitterにアクセスする

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/06/24 14:00

 Twitterの開発者がRESTベースのAPIを公開してから、これまでに多くの開発者がこのAPIを利用して、さまざまなプラットフォーム向けにTwitterクライアントを開発しています。本稿では、.NETプラットフォームを使ってTwitterにアクセスする方法を紹介します。

目次

はじめに

 今日、ソーシャルネットワーキングは人々の間にすっかり定着しました。中でもユニークなソーシャルネットワーキングサービスであるTwitterは2006年3月に開設され、そのマイクロブログプラットフォームによって全世界で一大ブームを巻き起こしました。

 Twitterの開発者がRESTベースのAPIを公開したのは、先見の明があったと言えるでしょう。これまでに多くの開発者がこのAPIを利用して、さまざまなプラットフォーム向けにTwitterクライアントを開発しています。本稿では、.NETプラットフォームを使ってTwitterにアクセスする方法を紹介します。

 Twitterは独自のコミュニケーションプラットフォームを提供します。ひとことで言えば、それは大規模なマルチプレイヤー参加型テキストメッセージングプラットフォームです。その基本コンセプトは3つの要素で成り立っています。つまり、「ステータス(メッセージ)」「フォロワー(follower:フォローする側の人)」「フォロウィー(followee:フォローされる側の人)」です。ユーザーがステータスを投稿すると、そのデータは投稿者のTwitterフィードに保存され、さらにその投稿者のフォロワーのTwitterフィードにコピーされるというのが基本的なデータの流れです。

※編集者注

 本記事はCoDe Magazine誌2009年3/4月号に初めて掲載されたもので、同誌の許可を得てここに再掲載しました。

Twitter URLの基本

 TwitterのAPIには、Twitterプラットフォームにアクセスするための仕組みが用意されています。このメカニズムはすっきりした構造で、しかも非常に柔軟です。Twitterのデータにアクセスするには特定のURLを呼び出します。TwitterはこのURLを処理し、XML、RSS、Atom、JSONなどの標準形式でデータを返します。

 TwitterのURL APIは3つの部分で構成されています。リクエスト、返されるデータのタイプ、オプションパラメータです。では、次のURLを調べてみましょう。

   http://twitter.com/statuses/user_timeline/rodpaddock.xml

 このメッセージの/statuses/user_timelineの部分は、処理すべきメッセージ(アクション)のタイプを指定します。このサンプルメッセージは、指定したユーザーのタイムライン(最近のステータス)を返すことを意味しています。

 その次の部分は、リクエストの基本パラメータです。このサンプルに含まれるパラメータrodpaddockは、筆者(Rod Paddock)のタイムラインを返すようstatuses/user_timelineリクエストに指示します。

 最後のパラメータの.xmlは、Twitterから返されるデータ形式を指定します(この場合はXML形式)。Twitterが他の形式でデータを返すようにするには、拡張子の部分を.rss.jsonあるいは.atomに変更します。

 このサンプルリクエストで返されるデータを図1に示します。

図1 ステータスXML:サンプルリクエストに対してTwitterが返すXMLデータ
図1 ステータスXML:サンプルリクエストに対してTwitterが返すXMLデータ

 TwitterのREST呼び出しの多くは、各種のオプションパラメータもサポートします。user_timelineリクエストでは以下のオプションパラメータが使えます。

  • id:投稿者のIDを使ってメッセージを返す
  • count:指定した件数のメッセージを返す(デフォルトは20件、最大200件)
  • since:指定した日付以降のメッセージを返す
  • since-id:指定したメッセージID以降のメッセージを返す
  • page:指定した表示ページからメッセージを返す

 オプションパラメータをTwitterに渡す方法は、URLを使ってWebリクエストにパラメータを渡すのと同じ要領です。「?」の後ろにパラメータを付加すればよいのです。例えば、次の呼び出しは、筆者のタイムラインから最近の200件のメッセージを返します。

   statuses/user_timeline/rodpaddock.xml?count=200

 次のURLは、2008年12月1日以降の筆者の最近200件のステータスを返します。

   user_timeline/rodpaddock.xml?count=200&
   since=Tue%2C+01+Dec+2008+22%3A55%3A48+GMT

 Twitterは自己完結型のXMLデータを返します。言い換えれば、返されたXMLデータを処理するのに新たな呼び出しを行う必要がないということです。ステータスXMLの基本構造を以下に示します。

   <statuses>
     <status>
       <created_at>
       <id>
       <text>
       <more elements....>
       <user>
         <id>
         <name>
         <screen_name>
         <profile_image_url>
         <more elements....>
       </user>
     </status>
   </statuses>

 各ステータスレコードには、投稿者の詳細情報など関連するすべてのデータが含まれています。ごらんのとおり、非常にシンプルな構造になっています。


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

著者プロフィール

バックナンバー

連載:japan.internet.com翻訳記事

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5