もふもふbot

mofu_mofu_bot on Twitter
powered by Ruby Twitter Gem

いまできること

  • Oauthでログインして,大学のPCのcrontabで定期的にtweetするところまでできた

もふもふに反応

もふもふを含むtweetをRTしてると多すぎるので、とりあえず"もふもふ"と"twitpic"を含むtweetだけにしてみた。その部分だけ取り出すと以下のような感じ。
  1. search = Twitter::Search.new
  2.  
  3. tweetid = []
  4. j = 1
  5. search.containing("もふもふ").containing("twitpic").no_retweets.result_type("recent").per_page(10).each do |r|
  6. puts "#{r.id}:#{r.from_user}: #{r.text}"
  7. tweetid[j] = r.id
  8. j += 1
  9. end
  10.  
  11. k = j-1
  12. while k>0
  13. Twitter.retweet(tweetid[k])
  14. k += -1
  15. end
最後のwhileで回してるのは、なんとなく古い方から順にRTしたかったから。per_page(10)っていうのは適当。拾い漏れがないようにしたければ大きくすれば良い。RTに失敗するとそれ以降止まってしまうのをどうにかしたい。
追記:わりとこれは致命的で、一度RTしたものをRTしようとすると止まってしまう。だから、新しい方からRTするという設定にしてこまめに実行するのがよろしいかな。僕はもうわりと満足してしまったので、このバグを直す気が起こらない。
さらに追記:どうやらrescueっていうのを使えば良さそうだ。気が向いたらあとでやろう。
特定のキーワードをリツイートする(Ruby bot)も参照。

実装したい機能

  • 自動フォロー返しできた
  • もふもふに反応する→できた 上参照
  • あれ、もうない? まあ、上に述べたバグは直さなきゃいけないんだけど

タグ:

Ruby bot OK
最終更新:2011年07月12日 22:45