2006-10-04
Rinda::Ring
仕組み理解。なるほど、おもれー。けど localhost 以外だとブロードキャストで投げたパケットがうまく Ring 鯖みつけられなくて返ってこないなぁ…。むぅ。
グループ間対抗ブクマカウンターバトル
サブテクは三位かぁ…。
- g:fragments - 14884
- g:hatena - 9493
- g:subtech - 3267
- g:beta - 2686
- g:mohican - 2133
- g:leftovers - 1504
- g:neo - 1396
- g:dogfood - 613
- g:lightnovel - 532
- g:pico - 502
- g:hatenadiary - 502
- g:neocup - 443
- g:css - 425
- g:guide - 269
- g:orera - 213
- g:monsterhunter - 199
- g:secretsociety - 164
- g:plagger - 154
- g:nikki - 144
- g:rubyist - 141
- g:haskell - 122
- g:book - 99
- g:downer - 95
- g:flicker - 83
- g:chinese - 62
- g:train - 48
- g:freebsd - 45
- g:theme - 44
- g:jigokugumi - 43
- g:onlinegames - 43
#!/usr/bin/env ruby
require 'xmlrpc/client'
require 'open-uri'
grouplist = 'http://g.hatena.ne.jp/grouplist?of=%s&s=membercount&r=1'
groups = []
of = 0
10.times do
uri = grouplist % of
groups << open(uri).read.scan(%r{(http://\w+\.g\.hatena\.ne\.jp/)register})
of += 20
end
results = {}
server = XMLRPC::Client.new('b.hatena.ne.jp', '/xmlrpc')
groups.flatten.sort.uniq.each do |uri|
count = server.call('bookmark.getTotalCount', uri) rescue retry
gname = *uri.scan(%r{http://([^\.]+)})
results[gname] = count if count > 0
end
results.sort_by {|i| i.last}.reverse.to_a.first(30).each {|g,c| puts "+ g:#{g} - #{c}" }
ActiveSupport::Multibyte
http://dev.rubyonrails.org/changeset/5223
キタコレ!のりおさんより。
リトルグッバイ / ROCKY CHACK
今期新しくアニメとりためしてんだけど、HDDレコーダの音がうっさくてねれねー。RD-H2 のファンうるさいよ><