Skip to: Site menu | Main content

@wikiメニュー編集表示ツールヘルプブックマーク登録RSS登録
このウィキに参加ログイン
新規ページ作成
すでにあるページをコピーして新規ページを作成 スレッドフロート型掲示板から引用して新規ページ作成(α版) ブログの内容から引用して新規ページ作成(α版) ファイルをアップロードして新規ページ作成(α版) 他のホームページから引用して新規ページ作成(α版)
[PR] 無料ホームページ @PAGES [PR] オークション@pedia [PR] 2ch型無料レンタル掲示板 @chs
@wikiで新規wikiを作成
このページを編集 このページを編集(メニュー非表示編集;α) このページをコピーして新規ページを作成 このページのページ名を変更 このページの編集モードを変更 このページの閲覧/編集権限の変更
このページにファイルをアップロード
このウィキにファイルをアップロード(FTP機能/管理者のみ利用可)
メニューを編集(メニュー部分は非表示で編集) 上部ページを編集(メニュー部分は非表示で編集)
このページの最新版変更点 このページの編集履歴(バックアップ) このページへのリンク元このページへのトラックバック
このページをPDFで表示(α版)
関連ページ(α版) 関連ホットワード(α版)
このwikiのページ一覧 編集履歴(バックアップ)のあるページ一覧 このwikiのタグ一覧 このwikiの更新情報RSSこのwikiの更新情報RSS このwikiの新着ページRSSこのwikiの新着ページRSS
このwiki内を検索 @wikiパーツ▶  @wiki便利ツール▶  このwikiの管理者に連絡
@wiki助け合いコミュニティ @wiki助け合い掲示板
wiki(ウィキ)って何?
初心者ガイド
ご利用ガイド 良くある質問 プラグイン一覧 編集モードの違いについて 不具合や障害を見つけたら 管理・設定マニュアル
はてなブックマークする FC2ブックマークに追加 Livedoor クリップに追加 Yahoo!ブックマークに登録 del.icio.usに追加
はてなRSSに追加 livedoor ReaderにRSSフィードを登録 Yahoo!にRSSフィードを登録 BloglinesにRSSフィードを登録 NewsGator OnlineにRSSフィードを登録 iGoogleにRSSを追加
@wikiパーツ:あなたのサイトにWikiデータを簡単表示!
最近更新したページの一覧を表示する 最近作成したページの一覧を表示する このwiki内を検索するフォームを表示する このwikiのタグクラウドを表示する 自動リンク辞書を利用する
@wiki便利ツール:トップページ
まとめサイト作成支援ツール RSSかんたん作成 興味キーワードをチェック!!(RSSナビ) いろんなblogのRSSかんたん作成ページ アマゾン商品検索(簡単アフィリエイト) wikiに株式情報(日本)を表示 wikiに株式情報(中国)を表示 かんたんHTML直接入力 Q&Aサイトかんたん連携作成 wikiに為替情報を表示 はてなアンテナと簡単連携

TwitterAPI+C#

TwitterをC#から使うライブラリを作ったり作ってなかったり。
検証はしてないが、VB.NETからも使用できます。
LINQtoXMLの理解をしたいのもあるので.NET Framework 3.5を使用。
C#2008で作成。

ライブラリの利用を考えてる方がいるようなので、そろそろライセンスをきちんとします。
そろそろTwitterにも興味がなくなったので次のVersionを出すのかわかりませんがw
次のVersion1.0.5からの条件になりますが。
  • 禁止事項は、販売、研究機関の公的な使用、逆コンパイルの禁止。
  • 上記以外の私的な利用or配布は、著作権の明記とlicence.txtとの同梱で可能。
  • 当ライブラリの利用範囲以外ではライセンスを継承する必要なし。
ちょっと厳密すぎるけど。これぐらいの条件になると思います。
これを外れる利用に関しては個別に柔軟に対応予定。

ReTweet関係が遅れてるのは、誰からもReplyされなく、デバッグができないって理由だったりするw

参考サイト

Twitter API Documentation(公式:英語)
Twitter API 仕様書 (勝手に日本語訳シリーズ)英語で理解できないとこは参考にさせてもらってます。
貧脚レーサーのサボり日記このブログ記事にあるライブラリを修正するうちに作る気になりました。

メソッド

Search API Methods

REST API Methods

Timeline Methods
statuses/home_timeline [COMING SOON]
statuses/retweeted_by_me [COMING SOON]
statuses/retweeted_to_me [COMING SOON]
statuses/retweets_of_me [COMING SOON]
Status Methods
statuses/retweet [COMING SOON]
statuses/retweets [COMING SOON]
User Methods
List Methods
List Members Methods
List Subscribers Methods
Direct Message Methods
Friendship Methods
Social Graph Methods
Account Methods
account/verify_credentials (未実装)
account/end_session(未実装)
account/update_delivery_device(未実装)
Favorite Methods
Notification Methods
Block Methods

Spam Reporting Methods
Saved Searches Methods
OAuth Methods(今のとこ実装予定なし)
oauth/request_token
oauth/authorize
oauth/authenticate
oauth/access_token
Help Methods(必要かな?いつか気が向いたら)
help/test

使い方

C#やVBのプロジェクトに参照を追加して使用してください。

フレンドタイムライン取得
C#サンプル
using Okura.TwitterAPI;
 
Methods method = new Methods("userID", "userPass");
var statuses = from timeline in method.StatusesFriendsTimeline()
		orderby timeline.Id
		select timeline;
foreach (var status in statuses)
{
	Console.WriteLine(status.User.Name + ":" + status.Text);
}
 

ステータスを更新(update)。
C#サンプル
using Okura.TwitterAPI;
 
Methods method = new Methods("userID", "userPass");
Status test = method.StatusesUpdate("テスト書き込み。");
 
VBサンプル
Imports Okura.TwitterAPI
 
Dim methods As Methods
methods = New Methods("userID", "userPass")
 
Dim test As Status
test = methods.StatusesUpdate("テスト書き込み。")
 

リストのタイムライン
using Okura.TwitterAPI;
 
Methods method = new Methods("userID", "userPass");
var statuses = from timeline in method.ListsTimeline("list_user_id", "list_name")
		orderby timeline.Id
		select timeline;
foreach (var status in statuses)
{
	Console.WriteLine(status.User.Name + ":" + status.Text);
}
 


更新履歴

Version 1.0.4 (2009/11/18)
  • 追加 UsersSearchを追加
  • 修正 List<T>のコメントを修正
Version 1.0.3 (2009/11/11)
  • 追加 Listsを正式追加
  • 変更 戻り値を配列からList<T>へ変更
Version 1.0.2 (2009/11/19)
  • 追加 Lists
Version 1.0.1 (2009/10/15)
  • 追加 ReportSpam
Version 1.0.0 (2009/09/21)
  • 公開


既知のバグ

まれに、エラーの戻り値によってはエラー。(たぶんTwitterから返ってきたXMLがおかしい)
XElement.Parseで止まってるが、再現がしにくいので、処理後回し。
エラー処理でなんとかなるレベル。

ダウンロード

Version 1.0.4 OkuraTwitter_1.0.4.zip

サポート

  • 不具合、要望、ご意見、ご感想等はWiki(TOP)からもしくはBLOGのコメントなどへお願い致します。

まとめ

Search API MethodsのSearchは使いやすい変数で整理が必要。
Json形式の文字列を返すので、.NET環境でJSONを利用するライブラリで処理してやる。
Json.NETを使った。
friendships/showの戻り値は、とりあえずXElementでそのまま返す。
IM関係がTwitter側で機能してるか不明(してないと思うが調べてない。)
すでに全部のメソッドをチェックするのはあきらめた。
使っている方がいれば報告してもらえると喜びます。


作成日時: 2009/07/07
更新日時: 2010/01/12