なにこれ
キルミーベイベー限りなく公式HPに近いサイト内で配布された686枚のツイッターアイコンをランダムにプロフィール画像に登録させるRubyスクリプトです。
アイコンはここで配布されています。
※追記しました(2014/09/18)
バージョン
ruby 2.1.1
Twitter 5.11.0
中身
ソースコードです
# -*- coding: utf-8 -*-
require "twitter"
CONSUMER_KEY = "あなたのCONSUMER_KEY"
CONSUMER_SECRET = "あなたのCONSUMER_SECRET"
OAUTH_TOKEN = "あなたのOAUTH_TOKEN"
OAUTH_TOKEN_SECRET = "あなたのOAUTH_TOKEN_SECRET"
def killme_icon
num1 = rand(12) + 1
num2 = rand(145) + 1
icon = "%02d" % num1.to_s + '_' + "%03d" % num2.to_s + '.png'
puts icon # デバッグ用
if true == File.exist?(icon)
icon
else
killme_icon
end
end
begin
killme_twitter = Twitter::REST::Client.new do |cnf|
cnf.consumer_key = CONSUMER_KEY
cnf.consumer_secret = CONSUMER_SECRET
cnf.access_token = OAUTH_TOKEN
cnf.access_token_secret = OAUTH_TOKEN_SECRET
end
killme_twitter.update_profile_image(File.open(killme_icon))
rescue => e
STDERR.puts "[EXCEPTION] " + e.to_s
exit 1
end
Gistはここ(更新してます。詳しくは追記参照)
CONSUMER_KEY
とかは自分で設定してください。参考サイト(http://ramtiga.hatenablog.jp/entry/20110409/p1)
あと、 アイコン画像は直下 に置いてください。ディレクトリで分けたいという人は各自がんばってください(丸投げ)。
アイコン画像のファイル名はDL時のままで大丈夫です。リネーム不要。
動作
killme_iconメソッドでアイコン画像を指定。 見つかるまで再帰します のでご注意を
.update_profile_image
で指定したアイコン画像にプロフィール更新
以上です
今後の展望
- 1日に1回プロフィール更新できるようにしたい(cronとか…?)
- WEBアプリケーション化(Rails + Heroku)
- プロフィール更新時に確認をする([y/n])←実装しました(2014/09/18)
追記(2014/09/18)
URL指定でプロフィール更新できるようになりました(ejo090さんありがとうございます)
新しく、 nokogiri
、 open-uri
のライブラリを使用しています。持っていない場合は gem install
をお願いします。
Gistのソースコードを更新しましたのでそちらを参照して下さい。
あとは、プロフィール更新するときに確認するようにしたのと、プロフィール更新時に自動的に呟くようにしたぐらいです。
お知らせ
WEBサービスとして公開したので良かったら使ってください
http://killme-twitter.herokuapp.com