見出し画像

特定のTwitterのフォローorフォロワーを一括取得し、リストに追加する方法(2020年)

どうもジンです。

先日、Twitterのリストを新規で作ろうと思ったのですが、
特定のツイッタラーのフォローを一括で取得しつつリストに入れる方法がネットにまとまって載っていなかったので、若干苦労しました。

他の人も同様、需要があるのかなとツイートで呟いたところ

画像1

そこそこのいいねがあったので、今回noteに書くことにしました。

ぜひ、参考にしてみてください。

僕はガチガチの文系であり、ネットで転がっていたものを多数流用した形なので、もっと適切な方法があるとは思います。その点は留意して頂ければと思います。

大まかな流れとしては、環境構築をした後に①TwitterのAPI取得、
②Pythonでデータを集めて、グーグルスプレッドシートに貼り付ける。その後に、③zapierとグーグルスプレッドシートを連携させるという手法をとりました。

0 環境構築

PCにPythonがインストールされていなかったため、
Anacondaで導入しました。
こちらは、こういったサイトこちらを見れば大丈夫だと思います。

① TwitterのAPI取得

こちらを参考にすると良いと思います。

ただ、取得要件が違うので、
「ある特定のフォローやフォロワーをビジネス目的で取得したい~」
みたいな内容をつらつらと書きました。

英語が苦手な人は
みらい翻訳という素晴らしいサービスがあるので
使ってみて下さい。

グーグル翻訳の上位互換のような感じです。

②Python でデータを集める

pip install tweepy

tweepy というソフトが必要なのでインストールします。

その後に、 qiitaで投稿されていたこちらを参考に、

test.py

CONSUMER_KEY = ""
CONSUMER_SECRET = ""
ACCESS_TOKEN = ""
ACCESS_TOKEN_SECRET = ""

import tweepy
cursor = -1
while cursor != 0:
   auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
   auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
   api = tweepy.API(auth, wait_on_rate_limit=True)
   itr = tweepy.Cursor(api.friends_ids, id='@欲しい人のID', cursor=cursor).pages()
   try:
       for friends_ids in itr.next():
           try:
               user = api.get_user(friends_ids)
               user_info = [user.screen_name]
               print(user_info)
           except tweepy.error.TweepError as e:
               print(e.reason)
   except ConnectionError as e:
       print(e.reason)
   cursor = itr.next_cursor

上、4行は、①でゲットしたものを入力。

⑪行目 api.friends_ids 
⑮行目  user = api.get_user(friends_ids)
※フォロワーを取得したい場合は
friends_ids を→followers.ids に変えてください。

画像2


※@staff_takapon ホリエモンちゃんねる公式Twitterから適当にテスト

③グーグルスプレッドシートに入れ、ZapierでTwitterと連携させる

グーグルスプレッドシートにコピペし、[や'を排除した列を作ります。

Zapier
こちらのサイトでグーグルスプレッドシートとTwitterを連携します。


指示通りやっていけば大丈夫です。

画像3


以上になります。

いろいろなところでエラー等あるかもしれませんが
基本的にこの手順通りやれば大丈夫だとは思いますので
参考にしてみてください。

もっと楽なやり方やスマートな方法あればDM頂けると嬉しいです。
追記にして、そちらを書きます。

最後まで読んで頂き、ありがとうございます。