アイコンを変えてみる(Ruby bot)


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

Ruby Twitter Gemでアイコンを変える方法。これはまちかねこ調査隊のアカウント用。これをcronで1週間ごとくらいに実行して行く予定。http://raixak07.ddo.jp/blog/?p=97 を参考にした。XMLの扱い方も少し分かった。同じフォルダに001.jpgとかがあり、icons.xmlがある。icons.xmlの中身は一番下に。XMLにもう少し要素を増やしてtweetにもう少し情報を入れたい。

  1. #! /usr/bin/ruby
  2. # encoding: utf-8
  3.  
  4. require "time"
  5. require "rubygems"
  6. require 'twitter'
  7. require 'rexml/document'
  8.  
  9. # ログイン
  10. Twitter.configure do |config|
  11. config.consumer_key = 'MqGPVPYi9ZKDHn56rD6SYA'
  12. config.consumer_secret = 'Happg2UG5kr5mVu0pxvXiuXe7UBdnKEszkjfZa3c01g'
  13. config.oauth_token = '297434585-YsKPDATcP21fFT4Z0eiz3uqSfTMQYbA8iDz2uUih'
  14. config.oauth_token_secret = 'CZandAwkykcaUiReFcUumKuzO6gFwtRGfvyntPKSt9o'
  15. end
  16.  
  17. path = "/home/oka/Dropbox/Ruby/Twitter/s_machikaneko/"
  18.  
  19. #http://raixak07.ddo.jp/blog/?p=97
  20. xmldoc = REXML::Document.new(File.open("#{path}icons.xml"))
  21.  
  22. count = 1 #なんか初期化しとかないとうまくいかない。
  23.  
  24. xmldoc.elements.each("Icons") do |element|
  25. count = element.elements.size
  26. end
  27.  
  28. num = rand( count ) + 1
  29.  
  30. con = "Icons/Icon[" << num.to_s << "]"
  31.  
  32. xmldoc.elements.each(con) do |element|
  33. Twitter.update_profile_image(File.new("#{path}#{element.text}.jpg"))
  34. Twitter.update("今日のアイコンはこのまちかねこです! http://photozou.jp/photo/tagged/1678930/#{element.text}")
  35. end

icons.xmlの中身
  1. <Icons>
  2. <Icon>001</Icon>
  3. <Icon>002</Icon>
  4. <Icon>003</Icon>
  5. <Icon>004</Icon>
  6. <Icon>005</Icon>
  7. <Icon>006</Icon>
  8. <Icon>007</Icon>
  9. <Icon>008</Icon>
  10. <Icon>009</Icon>
  11. <Icon>010</Icon>
  12. <Icon>011</Icon>
  13. <Icon>012</Icon>
  14. <Icon>013</Icon>
  15. <Icon>014</Icon>
  16. <Icon>015</Icon>
  17. <Icon>016</Icon>
  18. <Icon>017</Icon>
  19. <Icon>018</Icon>
  20. <Icon>019</Icon>
  21. <Icon>020</Icon>
  22. <Icon>021</Icon>
  23. <Icon>022</Icon>
  24. <Icon>023</Icon>
  25. <Icon>024</Icon>
  26. <Icon>025</Icon>
  27. <Icon>026</Icon>
  28. <Icon>027</Icon>
  29. <Icon>028</Icon>
  30. </Icons>

コメント

  • crontabで実行するにはxmlやjpgを絶対パスで指定しなければならないみたいで自動化がずっとできてなかった。修正した。 -- (OK) 2011-07-04 00:40:18
  • あと、画像は700KB以下じゃないとTwitterにはじかれる。 -- (OK) 2011-07-04 00:41:07
名前:
コメント:

すべてのコメントを見る