Fresopiya
場所にもお金にも時間にも、何にも縛られない自由な状態になったら一体人間は何をしてどこに向かうのか。

まずはとにかく自由を目指すエンジニアのブログです。
「哲学」と「プログラミング」と「政治経済」、「ブログ」がメインになるかと。
プログラミング

【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を全て取得してみた