2015/04/18

tweepyライブラリを利用する (ユーザ情報の取得)

ユーザ情報を取得します。
meメソッドで自分、get_userメソッドでユーザIDを指定して取得することができます。

Twitter APIで取得できるユーザ情報の詳細は、ここを参照してください。

英語ですが、例が記載してあるのでそんなに難しくないです。
ここでは例としてID、スクリーン名、名前などを表示させます。

1.自分の情報を取得する。
meメソッドで取得できます。

import tweepy

CONSUMER_KEY    = '(コンシューマキー)'
CONSUMER_SECRET = '(コンシューマシークレット)'
ACCESSS_TOKEN   = '(アクセストークン)'
ACCESS_SECRET   = '(アクセストークン シークレット)'

if __name__ == '__main__':
    try:
        auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
        auth.set_access_token(ACCESSS_TOKEN, ACCESS_SECRET)
        api = tweepy.API(auth)

        user = api.me()

        print('id:' + user.id_str)                   # ユーザID
        print('screen_name:' + user.screen_name)     # スクリーン名
        print('name:' + user.name)                   # 表示名
        print('description:' + user.description)     # 自己紹介
        print('created_at:' + str(user.created_at))  # 作成日時
        print('location:' + user.location)           # 場所
        print('lang:' + user.lang)                   # 言語

    except tweepy.TweepError as e:
        print(e.reason)


実行結果

例ではアカウント作成日時を表示させていますが、created_atに格納されている日付はUTC(協定世界時)ですので、日本と9時間の差があります。 userには、utc_offset にUTCとの差分(32400[9時間])が格納されていますので、正確にはこの値を加算したものが現地時間になりますね。


2.他のユーザの情報を取得する。
get_userメソッドを使用しますが、ユーザIDまたはスクリーン名をパラメータで指定します。

(1) ユーザIDで取得する場合

user = api.get_user(id=[ユーザID])


(2) スクリーン名で取得する場合

user = api.get_user(screen_name=[スクリーン名])