RubyではてなのブックマークのAPIを利用してみる

VirtualBoxにインストールしたCentOSの環境で

RubyはてなのブックマークのAPIを利用する
サンプルプログラムを作成してみる。

事前準備

Rubyなど必要なものをインストールしておく。

$ sudo yum -y install ruby rubygems ruby-devel gcc
$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

Ruby1.8にはjsonのパーサーが標準で入ってないようなので入れる。

$ sudo gem install json

プログラム作成

ブックマーク情報を取得するプログラムを作成する。

$ vi sample.rb
require "rubygems"
require "json"
require "open-uri"

if not ARGV[0]
  puts 'URLを指定してください'
  exit
end

url = ARGV[0]

json = nil
open('http://b.hatena.ne.jp/entry/jsonlite/' + url) do |uri|
  json = JSON.parse(uri.read, {:symbolize_names => true})
end

puts '[URL]   ' + url
puts '[TITLE] ' + json[:title]
puts '[COUNT] ' + json[:count]
puts '[COMMENT]'
count = 1
json[:bookmarks].each do |bookmark|
  if bookmark[:comment] != ''
    puts bookmark[:comment]
    count += 1
    break if count > 10
  end
end

実行

実行すると下記のような感じで表示される。

$ ruby sample.rb http://www.hatena.ne.jp/
[URL]   http://www.hatena.ne.jp/
[TITLE] はてな
[COUNT] 5398
[COMMENT]
はてなブックマークを始めるためには最初にどこかのページをブックマークしなければいけないのは知らなかった。
はてなをテーマに扱っています。
・・・
暇つぶしには最高www