API権限を確認する
APIのデフォルト権限は、DM送信の権限が与えられていません。
Read+Write+DirectMessagesに権限を変更して、API鍵を再発行してください。
ライブラリを読み込む
import tweepy
import time as t
APIインスタンスを作成する
CK="xxxxx" #Consumer Key
CKS="xxxxx" #Consumer Key Secret
AT="xxxxx" #Access Token
ATS="xxxxx" #Access Token Secret
#APIインスタンス作成関数
def connect_api():
auth = tweepy.OAuthHandler(CK, CKS)
auth.set_access_token(AT, ATS)
api = tweepy.API(auth)
return api
api=connect_api() #APIインスタンスの作成
アンフォロー処理と例外処理を実装する
twitter_id="xxxxx" #自身のtwitterIDを入力(@マークなし)
friends=api.friends_ids(twitter_id) #フォローユーザの取得
followers=api.followers_ids(twitter_id) #フォロワーの取得
for f in friends: #フォローユーザ分だけループ
if f not in followers: #フォローユーザがフォロワーに含まれていないなら
print(str(api.get_user(f).name)+"@"+str(api.get_user(f).screen_name)+"をアンフォローします。")
try:
api.destroy_friendship(f)
except tweepy.TweepError as e:
print( "TweepError " + str(e) )
t.sleep(15 * 60) #15分待機
except tweepy.RateLimitError as e:
print( "RateLimitError " + str(e) )
t.sleep(15 * 60) #15分待機
except Exception as e:
print( "Exception " + str(e) )
t.sleep(10) #10秒待機
else:
print("アンフォロー完了")
t.sleep(10) #10秒待機
else:
print(str(api.get_user(f).name)+"@"+str(api.get_user(f).screen_name)+"は相互フォローされています。")
print("end")
コメント