Mae向きなブログ

Mae向きな情報発信を続けていきたいと思います。

やる気度チェック!

このはてなダイアリーを書き出したのは,2003年10月19日です。以来,何か勉強したことなんかを書いてきましたが,最近は,なんだか滞ってきました(^^)。
書いて来た過去を振り返ってみると,はてなダイアリーに頻繁に書けるときほど,毎日が充実しているような感じがします。
ということで,

  • 今までで一番書いていない期間は何日くらいなのか?
  • それはいつぐらいなのか?

ということが知りたくなったので,以下のようなスクリプトを作って調べてみました。

yarukido.rb

mechanizeの理解が不十分なので,以下のような書き方で良いのか自信はありません。

# -*- coding: utf-8 -*-
require 'rubygems'
require 'mechanize'
require 'date'

Id  = "rahaema"
Url = "http://d.hatena.ne.jp/"

$max = 0
$from = nil
$to = nil
def fetch_link(page, start)
  d1 = start
  d2 = nil
  page.links_with(:text => /\d{4}\-\d{2}\-\d{2}/).each do |link|
    year, month, day =  link.text.split(/-/)
    d2 = Date.new(year.to_i, month.to_i, day.to_i)
    if $max < d1 - d2
      $max = d1 - d2
      $to = d1
      $from = d2
    end
    d1 = d2
  end
  return d2
end

agent = WWW::Mechanize.new
page = agent.get(Url + Id + "/archive")
day = fetch_link(page, Date.today)
while page.link_with(:text => /古い50日分/)
  page2 = page.link_with(:text => /古い50日分/).click
  day = fetch_link(page2, day)
  page = page2
end

print "Hatena::Diaryを書き始めてから,最大の空白期間は,", $max, "日!\n"
print $from, "", $to, "\n"

実行結果

$ ruby yarukido.rb
Hatena::Diaryを書き始めてから,最大の空白期間は,105日!
2007-06-29 〜 2007-10-12

実行してみると,105日間も更新しない時期があったみたいです。2007年くらいですね。それに比べると,今はまだ大したやる気度下降期とは言えないのかなという感じに思えて来ました。少し気が楽になりました(^^)。