Twitter API v2
前回、TweepyからTwitter API v2を使って、タイムラインからリツイートを抽出してみました。
今回は自分のアカウントのデータを取得する方法を見ていきましょう。
いつも通りTwitter API v2とv1.1の両方で接続しておきます。
import tweepy
BT = "Your bearer token"
CK = "Your API key"
CS = "Your API secret"
AT = "Your Access token"
ATS = "Your access token secret"
client = tweepy.Client(bearer_token=BT, consumer_key = CK, consumer_secret=CS, access_token=AT, access_token_secret=ATS)
それでは始めていきましょう。
自分のアカウントの情報を取得する方法
自分のアカウントの情報を取得するには、「.get_me()」を用います。
とりあえず使ってみるとこんな感じです。
me = client.get_me()
print(me)
実行結果
Response(data=<User id=1364192130936107008 name=のり@3PySci Python&sqlite3勉強中👍
username=3PySci_Nori>, includes={}, errors=[], meta={})
この段階で取得できるのは「アカウントID」、「表示名」、「ユーザー名」の3つです。
ただこれだけでは正直足りないですよね。
特にフォロー数、フォロワー数が欲しいなんてことが多いのではないでしょうか。
その場合は前にも出てきた「○○_fields」を使います。
今回はアカウント作成日時(created_at)、紹介文(description)、フォロー数、フォロワー数、ツイート数、リストされている数(public_metrics)、プロフィールでリンクされているURL(url)を取得していきましょう。
me = client.get_me(user_fields=['created_at', 'description', 'public_metrics', 'url'])
print(me.data.created_at)
print(me.data.description)
print(me.data.public_metrics)
print(me.data.url)
実行結果
2021-02-23 12:36:08+00:00
3PySciの管理人😆 #プログラミング (特に #Python )や #ガジェット 、 #Apple 好きな方と繋がりたいです☺️ #Django 、 #Arduino ( #M5StickC ) #sqlite なんかもいじってます🙄GitHub https://t.co/2WPxcNoGVC
{'followers_count': 6633, 'following_count': 6777, 'tweet_count': 6115, 'listed_count': 23}
https://t.co/fviDIFxBia
ここからフォロー数、フォロワー数を取得するにはこのようにします。
print(me.data.public_metrics['followers_count'])
print(me.data.public_metrics['following_count'])
実行結果
6633
6777
またアカウント作成日時はUTC(協定世界時)で表示されています。
これはイギリスの日時(GMT)とほぼ同じであるため、日本は+9時間の時差があります。
そのため日本時間に直すにはdatetimeモジュールを使って時刻を変える必要があります。
ちなみにcreated_atで取得したデータはdatetime型なので、timedeltaで時間を変えることができます。
import datetime
print(type(me.data.created_at))
print(me.data.created_at + datetime.timedelta(hours=9))
実行結果
<class 'datetime.datetime'>
2021-02-23 21:36:08+00:00
ということで自分の情報を取得する方法でした。
次回はちょうど新規アカウントを作成したので、新規アカウントによるTwitter Developer Portalの登録方法を見ていきましょう。
ちなみに前にも一度、Twitter Developer Portalへの登録方法を紹介していますが、その時と比べると遥かに簡素化されています。
ではでは今回はこんな感じで。
コメント