February 14, 2009

Rubytter

Rubytter は Ruby で書かれたシンプルな Twitter ライブラリです。
Twitter API を Ruby から利用しやすいようにラップしているだけで、それ以外のことは何もしていません。
現状、API のほとんどのメソッドに対応してます。

インストール方法

gem で簡単にインストールできます。

sudo gem install rubytter

開発に使っている GitHub から直接 gem をインストールすることもできます。

gem source -a http://gems.github.com
sudo gem install jugyo-rubytter

ソースコード

http://github.com/jugyo/rubytter

使い方

Rubytter の使い方は非常にシンプルで簡単です。

まず始めに Rubytter のインスタンスを作ります。
その際、引数に Twitter のログインID(ユーザーID or メールアドレス)とパスワードを指定します。

rubytter = Rubytter.new('login_id', 'password')

メッセージの投稿には update メソッドを使います。

rubytter.update('ただいまー!')

タイムラインの取得には friends_timeline メソッドを使います。

client.friends_timeline.each do |status|
  puts "#{status.user.screen_name}: #{status.text}"
end

タイムライン取得時に一度に取ってこれるデータ件数は 20 件で、ページを指定することで 20 件以降のデータを取ってくることができます。

client.friends_timeline(:page => 2).each do |status|
  puts "#{status.user.screen_name}: #{status.text}"
end

API とメソッドの対応

Rubytter と Twitter API とのメソッドの対応は以下のようになっています。

Rubytter Twitter
update(message) /statuses/update
remove_status(id, params = {}) /statuses/destroy/
public_timeline() /statuses/public_timeline
friends_timeline() /statuses/friends_timeline
replies() /statuses/replies
user_timeline(id) /statuses/user_timeline/
show(id) /statuses/show/
friends(id) /statuses/friends/
followers(id) /statuses/followers/
user(id) /users/show/
direct_messages() /direct_messages
sent_direct_messages() /direct_messages/sent
direct_message(message) /direct_messages/new
remove_direct_message(id, params = {}) /direct_messages/destroy/
follow(id, params = {}) /friendships/create/
leave(id, params = {}) /friendships/destroy/
friendship_exists() /friendships/exists
followers_ids(id) /followers/ids/
friends_ids(id) /friends/ids/
favorites() /favorites
favorite(id, params = {}) /favorites/create/
remove_favorite(id, params = {}) /favorites/destroy/
verify_credentials(params = {}) /account/verify_credentials
end_session(params = {}) /account/end_session
update_delivery_device(params = {}) /account/update_delivery_device
update_profile_colors(params = {}) /account/update_profile_colors
limit_status() /account/rate_limit_status
update_profile(params = {}) /account/update_profile
enable_notification(id, params = {}) /notifications/follow/
disable_notification(id, params = {}) /notifications/leave/
block(id, params = {}) /blocks/create/
unblock(id, params = {}) /blocks/destroy/
search(query or params) (search.twitter.com)/search

Twitter API の詳細については以下を参照してください。
Twitter API Wiki / REST API Documentation

enjoy!

No Comments »

TrackBack URI

Leave a comment

※上の項目は入力してもしなくてもよいです。