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 | |
|---|---|
| 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!