Web 2.0の根幹をなす技術の1つにRSSがあります。RSSは、Webサイトやブログの更新情報を配信するための技術です。
筆者は以前から、RSSから収集したデータをデータベースに登録したり、ブログをメールで更新(moblog)するためのスクリプトなどを作成し、複数動作させていました。これらのスクリプトは基本的にはほとんど同じような処理を行うものです。処理は大きく分けて、外部のサーバーからデータを取得する部分と、取得したデータをフィルタする部分、そして、フィルタした結果をデータベースなどに出力する部分です。フィルタする部分は同じ機能を再実装しているところも多々ありました。
自作のスクリプト類をリファクタリングする必要性を感じ始めた時に、Plaggerの存在を知り、UNIX的な思想に感銘しました。Plaggerにインスパイアされ、Pythonベースで「habu(ハブ)」の開発を始めました。habuも、Plaggerと同じようにプラグインを組み合わせてRSSを加工します。ただし、2007年8月現在の最新版はバージョン0.1です。このバージョン番号からも分るように、habuはまだ開発途上のソフトウェアであるため、今後動作や仕様が変わる可能性もあリます。
この記事ではhabuのインストールと基本的な使い方について説明します。
入手とインストール
habuを使用するには、Python 2.4以降が必要です。また,追加のモジュールとして「Universal Feed Parser(feedparser)」「PyYAML」「Twisted」が必要ですので、別途インストールしてください。動作OSは以上のソフトウェアが動作するプラットフォームすべてですが、筆者はLinux、Mac OS Xでのみ動作検証しています。Windowsでも問題なく動くはずです。
habuはこちらのページからtarボール(habu-0.1.1.tgz、2007年8月28日現在)をダウンロードしてください。その後、次のように実行し展開します。
$ tar zxvf habu-バージョン番号.tgz
まだ開発中ということで、インストールスクリプトは用意していません。展開するとhabu
というディレクトリができます。以降はこのディレクトリに移動して作業します。