うお座の人専用のbotをつくりました

http://twitter.com/positive_uoza

です。

■めざましテレビのうらない
■ヤフーのうらない
でうお座が1位になったときだけつぶやきます。
今後対応サイトは増やしていきたいと思います。

Twitterのbotでアイコン変更をちょくちょくやってますが
わりと簡単にできるので書いておきます。


curl -u ユーザーID:ユーザーパスワード -H 'Expect:' -F image=@'アイコンファイルパス;type=image/png' http://twitter.com/account/update_profile_image.xml


これだけです。これだけでできます。
ちなみに ここ の一番下に書いてあります。
そこそこ失敗するのでリトライ処理は付けた方が良いと思います。


以下rubyによるサンプル↓

require 'systemu'

# パラメータはアイコンファイル名
# 3回リトライする
def change_icon(icon_name)
command_str = "curl -u #{@user_id}:#{@user_pass} -H 'Expect:' -F image=@'/home/bot/icon/#{icon_name};type=image/png' http://twitter.com/account/update_profile_image.xml"
3.times do |retry_count|
out = ''
systemu command_str, :out => out
/<profile_image_url>(.*)<\/profile_image_url>/ =~ out
if !$1.blank?
p "アイコンチェンジ完了 #{icon_name}"
return $1
else
p "アイコンチェンジ失敗 #{icon_name} wait 30"
sleep(30)
end
end
return nil
end