プログラミング

【Python】Twitterのフォロワー情報の取得方法

どうも、とがみんです。

ブログを広めるなり、ビジネスにおいて影響力を持つためにはSNSの運用はとても重要だと思います。

どんな人が自分をフォローしているんだろうと考える人も多いのではないでしょうか。

この記事では、Pythonを利用して、どのようにしてTwitterからあるアカウントのフォロワー情報を取得するのかについて説明していきます。

具体的な分析手法については、今後考えて別の記事にでも書いていきます。

今回目指すもの

今回は、Pythonを利用して、あるユーザーアカウントのフォロワー情報を取得し、それを表にまとめた結果として表示するプログラムを作成します。

とがみん(@togaminnnn)のフォロワー情報を取得しました。

作成したCSVファイルをスプレッドシートで開いたものが下の写真になります。

今回は、指定したユーザーのTwitterユーザーのフォロワーのデータを取得し、CSVファイルに出力するまでを説明します。

前準備

プログラムを書くまえに、TweepyというライブラリとTwitterAPIキーを取得します。

「Tweepy」のインストール

tweepyというTwitterのAPIを操作するPythonのライブラリをインストールします。

ターミナルを開き、以下のコードを入力し、Enterキーを押します。

pip install tweepy

Enterキーを押すと、ライブラリのインストールが始まります。

TwitterのAPIキーの取得

Twitterの情報を取得するためには、Twitterの以下の4つの情報を取得する必要があります。

  • 「APIキー」
  • 「APIシークレットキー」
  • 「アクセストークン」
  • 「アクセストークンシークレット」

取得方法は以下の記事に詳しく書かれていますので、参考にしてください。


Twitterのフォロワーを取得するコードの実装

フォロワー情報の取得

まず取得した、APIキーを各変数に格納します。

次のコードで、Twitterにアクセスする準備をします。

そして、以下のコードで、ユーザー名の入力待ち状態になります。

フォロワー情報を取得したいアカウントの「ユーザー名(@〜)」を入力し、Enterキーを押します。

followerIDsにフォロワーのIDが格納されていきます。

次に、followerIDsに対応したユーザ情報を取得します。

必要な情報を取り出し、followerDatasに格納していきます。

今回はアカウント名フォロー数フォロワー数ディスクリプションツイート数のみを取り出しています。

この時点で、followerDatasにフォロワーの情報が格納されています。

TwitterAPIのアクセス制限

TwiterのAPIには制限があり、15分単位あたりにアクセス可能な件数が決まっています。

アクセスしすぎると、15分経つまで、アクセスができなくなります。以下のwait_on_rate_limitTrueにしておくと、APIの使用制限に引っかかった際に必要な時間だけ、待機してくれます。

api = tweepy.API(auth,wait_on_rate_limit = True)

>TwitterのAPI制限 [2018/08/26現在]

>TweepyでフォロワーのIDを全て取得してみた

表にデータをまとめる

最後に得たデータを表にまとめます。表にするにあたって「pandas」というライブラリを使用します。

このデータを表にまとめて出力します。

%matplotlib inlineJupyter Notebookを使用する際、それ上にグラフ等が表示されるようにしたい時に記述します。

pd.set_option(“display.max_rows”, 1000)Jupyter Notebookに表示させる最大データ行数を設定しています。

また、.loc[“Name”,”Follow”,”Follower”,”TweetCount”,”Description”]は、表のカラムの順番を指定しています。

ファイル出力

CSVファイルへ出力します。以下のコードを実行すると、ユーザーからの入力待ち状態となり、入力した名前がファイル名のデータを出力します。

ターミナルで実行してみる

getFollowers.pyに上記コードを書き込み、そのファイルを実際にターミナルで実行してみます。

GitHub

コードはGitHubにあげているので、参考にしてください。APIキーは自分で取得してください。

>https://github.com/togamin/getFollowers.git

まとめ

Twitterのフォロワー情報を取得する方法について紹介しました。

参考文献

>tweepy.api めも //UserオブジェクトとStatusオブジェクトについて

>TwitterのAPI制限 [2018/08/26現在]

>TweepyでフォロワーのIDを全て取得してみた