Twitter4Rで、フォロー先ユーザの情報取得

Twitterでフォロー情報消失事故発生という噂を聞いたので、自分がフォローしているユーザの情報をバックアップすることを試みました。Ruby用のTwitterクライアントライブラリ「Twitter4R」を使用しています。

結果的にはごく簡単に取れたのですが、どうもTwitter4Rはドキュメントが貧弱なので、なかなか試行錯誤を要しました。
# 要はソースを読めばいいわけですが、Rubyコード読解力が怪しいもので…

ポイントは以下の2点です。

  • Twitter::Client#my(:friends) で、自分のフォロー先ユーザの情報が、Twitter::Userの配列として得られる。
  • Twitter::User#to_hash() で、ユーザの属性がハッシュとして得られる。

以下のようなコードで、自分がフォローしているユーザのID一覧を取得できることを確認しました。

#!/usr/bin/ruby

require 'rubygems'
require 'twitter'

client = Twitter::Client.new(:login => USER_ID, :password => PASSWORD)

client.my(:friends).each {|f|
  attr = f.to_hash
  puts "#{attr[:screen_name]} <#{attr[:name]}>"
}

ここで、ユーザ属性 :screen_name はいわゆるユーザID (twitter.com/USER_ID として現れる文字列)、:name はプロフィール中の名前に相当します。