ユーザIDだけなら1回で5000人分取得できますが、IDをだけでは誰が誰やら分かりません…
ユーザ情報として取得するには1回に200人分が限界です。
200人以上のフォロワーがいる場合は、何回かに分けて取得する必要がありますが、そのためにパラメータとしてcursorを指定する必要があります。
cursorは、-1で先頭ページを指します。
Twitterのカーソルについては、別途詳しく紹介しているサイトを見ていただくとして、tweepyには、カーソルを扱うためのオブジェクトがあります。
今回は、カーソルオブジェクトを使って、フォロワー情報を取得する方法を紹介します。
import tweepy from tweepy.error import TweepError CONSUMER_KEY = '(コンシューマキー)' CONSUMER_SECRET = '(コンシューマシークレット)' ACCESSS_TOKEN = '(アクセストークン)' ACCESS_SECRET = '(アクセストークン シークレット)' if __name__ == '__main__': auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESSS_TOKEN, ACCESS_SECRET) api = tweepy.API(auth) try: pos = 1 for user in tweepy.Cursor(api.followers, count=200, cursor=-1).items(): print(str(pos) + ":" + user.screen_name + "(" + str(user.name) + ")") pos += 1 except TweepError as e: print(e.reason)
Cursorオブジェクトは、第一引数に実行するメソッドを、第二引数以降にメソッドの引数を指定します。
ここでは、フォロワー情報の取得メソッドfollowersを第一引数に、followersメソッドの引数であるcountとcursorを第二引数以降に指定して、Cursorオブジェクトのitemsメソッドを実行します。
itemsメソッドはイテレータとして動作しますので、userオブジェクトのリストが取得されます。(16行目)
ただし、followersメソッドのリミットを超えるとTweepErrorが発生しますので、フォロワーさんが多い場合は、違う方法でフォロワー情報を取得する必要がありますね。