follow meバッジをブログにつけた
右についてるやつね.
Twitter “Follow” Badge for your site / blog
で,アカウント名いれて,「follow me」にして,色決めて,上からの位置決めて,update codeすると,javascriptのコードが出るので,それをコピーしてブログやサイトのbodyタグ内にいれるとできると思います.
IE6じゃ見られないらしい.
Tags: twitter
Subcribe via RSS
右についてるやつね.
Twitter “Follow” Badge for your site / blog
で,アカウント名いれて,「follow me」にして,色決めて,上からの位置決めて,update codeすると,javascriptのコードが出るので,それをコピーしてブログやサイトのbodyタグ内にいれるとできると思います.
IE6じゃ見られないらしい.
rubyからtwitter APIをたたくbotを作ります。
今回は、
「受け取ったダイレクトメッセージを、そのままpostするbot」
を作ります。
以前はtwitter4Rというgemを使っていたけど、それが正しく動かなくなったので、
Ruby Twitter Gem by John Nunemaker
を使います。
ドキュメントは
rdoc.info :: twitter
に詳しいです。
で、ソースコード。
require 'rubygems'
require 'twitter'
#twitter conf
username = ''
password = ''
httpauth = Twitter::HTTPAuth.new(username, password)
client = Twitter::Base.new(httpauth)
client.direct_messages.each{ |msg|
post_msg = msg.text.strip
client.update(post_msg)
client.direct_message_destroy(msg.id)
}
この記事は古いので、プログラムが使えない可能性が高いです。
今ならrubygemのtwitterライブラリを使うのがよいと思います。Oauthも必要です。
こないだ,twitterにくだらないギャグをpostするプログラムを書いたので,今度は他の人からの投稿を受け付けて,ギャグリストに追加するプログラムを書きました.
[ad]
これで誰でも思いついたくだらないギャグをsubetterに言わせることができます.
require('rubygems')
gem('twitter4r','0.3.0')
require('twitter')
require "mysql"
flag = 0
msg = nil
my = Mysql::new("localhost", "user", "passwd", "db_name")
client =Twitter::Client.new(:login => 'subetter',:password => 'passwd')
client.messages(:received).each do |msg|
#メッセージのテキストを取得,改行文字を省く
joke = msg.text
joke = joke.strip
#メッセージの送り主を取得
user_name = msg.sender.screen_name
que = "SELECT * FROM jokes WHERE joke='" + joke + "'"
res = my.query(que)
res.each do |row|
flag = 1
end
#p flag
if flag == 0
sql = "INSERT INTO jokes VALUES ('','" + user_name + "','" + joke + "')"
#mysqlにギャグを登録
my.query(sql)
#テキストファイルにもギャグを登録
file = open("/home/jun/Dropbox/cyg/work/ruby/twitter/jokes.txt", 'a')
file.puts joke
file.close
else
flag = 0
end
end
exit
なかなか苦労しました.
一番参考になったのは,
Ubuntu 8.04.1 に Ruby on Rails 2.1.0 を入れる – neconnect.net
です.
$ sudo apt-get install ruby rdoc irb ruby1.8-dev rubygems libopenssl-ruby $ sudo gem update --system $ sudo apt-get remove rubygems $ sudo ln -s /usr/bin/gem1.8 /usr/bin/gem $ sudo gem install railsで,Ruby on railsの環境ができます.古いgemを入れてからアップデートして,古いgemを削除して新しいgemへのリンクを作るようです.
$ sudo apt-get install mysql-server libmysql-ruby1.8 libmysqlclient15 $ sudo gem install mysqlをやって,起動時には
rails -d mysqlをやるとデータベースをmysqlにしてrailsを実行できます.
alias rails="rails -d mysql"を追加しました.
$ sudo gem install json $ sudo gem install twitter4rたしかこんな感じでいけると思います.
$sudo gem install twitterでいけます.
require('time')
require 'rubygems'
require 'twitter'
#twitter conf
username = 'username'
password = 'password'
httpauth = Twitter::HTTPAuth.new(username, password)
client = Twitter::Base.new(httpauth)
lines = 0
msg = nil
open("/user/tjun/work/twitter/subetter/jokes.txt"){|file|
while tmp = file.gets
lines += 1
end
}
open("/user/tjun/work/twitter/subetter/jokes.txt"){|file|
msg = file.readlines[rand(lines)].chomp
#print msg
}
client.update(msg)
require('time')
require('rubygems')
gem('twitter4r','0.3.0')
require('twitter')
lines = 0
msg = nil
open("jokes.txt"){|file|
while tmp = file.gets
lines += 1
end
}
open("home/user/....../jokes.txt"){|file|
#ファイルのパスは絶対パスで書かないとcronで読み込むときに失敗します
msg = file.readlines[rand(lines)]
# print msg
}
client =Twitter::Client.new(:login => 'subetter',:password => 'password')
client.status(:post, msg)
exit
crontab -eでcronを設定することができます.
# m h dom mon dow command 00 15 * * * ruby /home/user/......../ruby/subetter.rbこれで毎日15時にギャグをつぶやきます.