こんにちはーー
Pythonで便利なScriptを色々作っています。
今回は、TwitterのフォローバックをPythonで自動化するプログラムを作ったので記事にしました。
この記事が誰かの役に立てば幸いです
※Twitterの規約を確認の上、自己責任で実行する必要があります
Youtubeにも投稿しましたw
プログラム全文
最初にプログラムの全文を載せます。
*アスタリスクには個別のアカウント名やキーを記入する必要があります。
import tweepy import time def get_api(): keys = dict( screen_name = '*******', #自分のアカウント名 consumer_key = '********', #Twitter APIから取得 consumer_secret = '***********', #Twitter APIから取得 access_token = '***********', #Twitter APIから取得 access_token_secret = '***********', #Twitter APIから取得 ) SCREEN_NAME = keys['screen_name'] CONSUMER_KEY = keys['consumer_key'] CONSUMER_SECRET = keys['consumer_secret'] ACCESS_TOKEN = keys['access_token'] ACCESS_TOKEN_SECRET = keys['access_token_secret'] auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET) api = tweepy.API(auth) return api, SCREEN_NAME def followback(api, followers, friends): not_followed_user_id = set(followers + friends) ^ set(friends)#フォロワーだけどフォローしてないアカウントを抽出 number_of_followed = 0 for user_id in not_followed_user_id: try: api.create_friendship(user_id) #フォロー number_of_followed += 1 time.sleep(2) #スパム誤認定対策 except Exception as e: print(e) print('number_of_followed : {}'.format(number_of_followed)) if __name__ == '__main__': api, SCREEN_NAME = get_api() followers = api.followers_ids(SCREEN_NAME) friends = api.friends_ids(SCREEN_NAME) followback(api, followers, friends)
プログラム詳細
概要
APIキーを取得して、フォロワーだけどフォローしてないアカウントを抽出してフォローします。
使用するモジュールとAPI取得
Tweepyとtimeを使います。
APIを取得する関数はお決まりのコードを書いています。
フォローバックと処理実行
フォロワーだけどフォローしてないアカウントを^(XOR)を使って抽出しています。
ちょっと分かりにくいかもしれませんが、↓の重なり合う丸のイメージです。
あと、スパムと誤認定されたら嫌なので、time.sleepをつかって、for文の処理間隔を2sに設定しています。
最後に、定義した関数を実行しています。
まとめ
まとめると↓みたいな構成になっています。
コメント