Twitter Streaming APIで日本語のつぶやきを取得
Spritzerを使用。json使ってる。
Spritzerは大体1時間あたり30000postくらい流れてくるけど、日本語のつぶやきは500postくらい?
require 'net/http' require 'uri' require 'json' Net::HTTP.version_1_2 id, pass = 'id', 'pass' uri = URI('http://stream.twitter.com/spritzer.json') str = "" http = Net::HTTP.start(uri.host, uri.port) req = Net::HTTP::Get.new(uri.request_uri) req.basic_auth id, pass http.request(req) do |res| res.read_body do |body| str = str + body until (i = str.index("\r\n")).nil? j = JSON.parse(str.slice!(0, i + 2)) puts "#{j['user']['screen_name']}:#{j['text']}" if /[ぁ-んァ-ヶ]/ =~ j['text'] end end end