読者です 読者をやめる 読者になる 読者になる

kivantium活動日記

プログラムを使っていろいろやります

アルファツイッタラーへの道

Twitter

Twitter上でのステータスを表す一番重要な指標はフォロワー数だと言えるでしょう。最近ではフォロワー数を増やす業者も登場しているとかで、ますますフォロワー数の重要性は増していると言っていいでしょう。というわけで、2015年になったので今年のうちにどれだけフォロワーを増やせるかに挑戦してみようと思います。

戦略

フォロワーを増やすコツとして考えられるものは、

  1. 有名人になる
  2. なんか面白いことをいう
  3. SPAMを集める

の3つです。上の2つを達成するのはハードルが高いので3番目の戦略で行こうと思います。

健全なTwitter生活を望んでいる人には縁がないかもしれませんが、相互フォローをという求める馴れ合い界隈が存在しそこがSPAMの巣窟になっています。SPAMでも何でもフォローしてくれるならフォロワー数を増やすという目的は達成できるのでそれでよいとしましょう。

SPAMにフォローされるためには、

  • フォロー返しをしてくれるSPAMをフォローする
  • SPAMにフォローされそうな言葉をつぶやく

の2つが考えられます。今月はフォロー返し狙いでどこまで行けるかを試してみようと思います。

フォロー返し!

フォロー返しをしてくれそうなアカウントをフォローするプログラムがこちらです。

#!/usr/bin/python
#-*- coding: utf-8 -*-

from tweepy import *

#認証する関数
def get_oauth():
    consumer_key = lines[0]
    consumer_secret = lines[1]
    access_key = lines[2]
    access_secret = lines[3]
    auth = OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_key, access_secret)
    return auth

f = open('config.txt','r') #認証データを入れたファイル
data = f.read()
f.close()
lines = data.split('\n')

auth = get_oauth()
api = API(auth)

#相互フォローとつぶやいている人を検索
for tweet in api.search(q='相互フォロー', count=100): 
    #フォローしていなければフォロー
    friendship = api.show_friendship(source_screen_name='ikuran01',target_screen_name=tweet.user.screen_name)
    if friendship[0].following == False:
        #フォロー数がフォロワー数の8割以上の場合に限定
        if tweet.user.friends_count > tweet.user.followers_count*4/5:
            api.create_friendship(tweet.user.screen_name)
            break

#相互フォロー というタグをつけて発言しているアカウントは大抵フォロワーを増やしたがっているSPAMアカウントなのでありがたくフォローされに行きます。何時間か運用したら口だけで実際にはフォロー返しをしてくれないアカウントも多いことが分かったので、本当にフォロー返ししてくれそうなフォロー数が多いアカウントに絞ったらフォロー返し率が上がりました。

このプログラムをcronで2分ごとに実行しています。

SPAMの恩返し

フォローされたらフォローを返さないとリムられる可能性があるので、フォローされたらフォロー返しをしてあげます。

 #!/usr/bin/python
 #-*- coding: utf-8 -*-
 
 from tweepy import *
 
 def get_oauth():
     consumer_key = lines[0]
     consumer_secret = lines[1]
     access_key = lines[2]
     access_secret = lines[3]
     auth = OAuthHandler(consumer_key, consumer_secret)
     auth.set_access_token(access_key, access_secret)
     return auth
 
 #Authorization
 f = open('/home/kivantium/ikuran/config.txt','r')
 data = f.read()
 f.close()
 lines = data.split('\n')
 
auth = get_oauth()
api = API(auth)
followers_id = api.followers_ids('ikuran01')
friends_id = api.friends_ids('ikuran01')
for follower in followers_id:
    if follower not in friends_id:
        api.create_friendship(follower)

フォロワー一覧を取得し、すでにフォローしたアカウントのリストに含まれていない場合はフォローする処理を行っています。

フォロー返ししない人民への無慈悲な鉄槌

フォロワーに対してフォロー数があまりに多いアカウントは嫌われる傾向にあるので、フォロー返ししてくれないアカウントはリムります。

 #!/usr/bin/python
 #-*- coding: utf-8 -*-
 
 from tweepy import *
 
 def get_oauth():
     consumer_key = lines[0]
     consumer_secret = lines[1]
     access_key = lines[2]
     access_secret = lines[3]
     auth = OAuthHandler(consumer_key, consumer_secret)
     auth.set_access_token(access_key, access_secret)
     return auth

 #Authorization
 f = open('/home/kivantium/ikuran/config.txt','r')
 data = f.read()
 f.close()
 lines = data.split('\n')
 
 auth = get_oauth()
 api = API(auth)
 followers_id = api.followers_ids('ikuran01')
 friends_id = api.friends_ids('ikuran01')
 for friend in friends_id:
     if friend not in followers_id:
         api.destroy_friendship(friend)

フォロー返ししてくれるまで時間がかかるアカウントがあるのであまり積極的に動かさないほうがいいかもしれません。

今後の展望

フォロー返しをしてくれるSPAMアカウントを回収するだけで数千フォローは稼げると思うのでしばらくはこのプログラムを動かしつづけてみることにします。果たして年内1万フォロワーを達成できるのか楽しみです。

感想

SPAMを相手にしているとTwitterが悲しくなってきます。正直に生きるのが一番です。