SmallStyle


2006-10-04

_ はてなブックマークカウンター XML-RPC API を Ruby で使う

任意のサイトの被はてなブックマークの総数を取得できるらしい.XML-RPC API も用意されているので,さっくりと Ruby で書いてみた.

#!/usr/bin/ruby
require 'xmlrpc/client'

class HatenaBookmarkCounter
   def initialize
      @s = XMLRPC::Client.new('b.hatena.ne.jp', '/xmlrpc')
   end

   def count url
      begin
         @s.call('bookmark.getTotalCount', url)
      rescue XMLRPC::FaultException => e
         e.faultString
      end
   end
end

if __FILE__ == $0
   if ARGV.size != 1
      print "usage: #{__FILE__} <url>\n"
      exit
   else
      puts HatenaBookmarkCounter.new.count(ARGV[0])
   end
end

コマンドラインからは,

$ ruby hatena_bookmark_counter.rb http://www.smallstyle.com
273

としても使えるし,ライブラリとしても利用することができます.

require 'hatena_bookmark_counter'
url = 'http://www.smallstyle.com'
puts HatenaBookmarkCounter.new.count(url)

何かおもしろい使い方がないか考えてみよう.


about me

いろいろと興味を持ったことを書いてます.ちょっとしたことは hb(@smallstyle) on Twitter で書いてます.

Archive

2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|12|