light log

学んだこととか

RubyのTwitter Gem使い方メモ(リスト周り) Part2

昨日↓の続き。少しだけ。

yamacent.hatenablog.com

リストに追加されている/リストを購読しているユーザの取得方法。

ユーザの取得は、リスト自体の取得に比べてRate Limitsの制限がゆるい。

require 'yaml'
require 'twitter'

CONFIG = YAML.load_file('config.yml')
client = Twitter::REST::Client.new(CONFIG)

user = 'yamacent'

# ユーザがメンバーに追加されているリスト (Twitter::Cursor)
memberships   = client.memberships(user, count: 10)

list = memberships.first

# リストのメンバー (Twitter::Cursor)
members = client.list_members(list.id, count: 1000)

# リストの購読者 (Twitter::Cursor)
subscribers = client.list_subscribers(list.id, count: 1000)

# subscribersでも同じ
members.each do |user|
  puts [
    user.id,              # ID
    user.screen_name,     # スクリーンネーム(@から始まるやつ)
    user.name,            # 名前
    user.description,     # 説明
    user.followers_count, # フォロワー数
    user.friends_count,   # フォロー数
    user.favorites_count, # お気に入り数
    user.lang,            # 言語
    user.location,        # 場所
                          # 他にもある
  ].join(', ')
end

参考

昨日といっしょ。