2007 . 07 . 28

openkapowでマッシュアップ

openkapow

ここ最近、マッシュアップというのが流行っています。

既存のWebサービスを再構築して新たな別のサービスを作ったりすることですが、広義ではユーザーの使い勝手のよい形にして利用したりすることを意味するようです。
その背景には、Googleをはじめ多くのWebサービスがAPIを公開し始めたことで、プロのWeb開発者のみならず、サンデープログラマーレベルでも容易にWebサービスを開発できるようなったことが挙げられます。

しかし、確かにWebサービスの開発は以前よりずっと身近になりつつあるとは言え、やはりそれなりの知識が必要です。
とくにプログラミング言語やサーバーに関する知識は不可欠といえるでしょう。
ブログブームも手伝い自分でWebサイトを作っている方も多い中、ある程度のHTMLの知識はある人も多いと思いますが、しかし、スクリプトやCGIを自作してWebサービスとして立ち上げることは、全く別次元のことで、素人がそう簡単に手の出せることではありません。

しかし、そのハードルを一気に下げるサービスが今回紹介する、openkapowです。

このopenkapowを簡単に説明すると、RoboMakerというソフトを使って、一般のWebサイトやWebサービスの必要な部分を抜き出したり、組合わせたりして、再構築する独自のプログラムを作成します。
これをここでは「Robot」といいますが、このRobotをopenkapowのサーバにアップロードして、openkapowのサーバで運用するというものです。
さらに、作成したRobotは同コミュニティーで共有され、誰でもそのRobotに手を加えることができる状態に置かれます。

以前にも同様のサービスで、「Dapper」というWebサービスを紹介しました。

Dapperの第一の特徴は、そのユーザーライクなUIにあり、HTMLの知識さえなくても、領域さえ指定すれば、情報を抽出できる点です。しかし、その反面、複雑な要求には答えてくれないことが多く、目当ての出力結果にならないことも少なくありません。


今回紹介するopenkapowは作成作業自体は、専用のソフトRoboMakerを使ってローカルで行います。そして何よりこのソフトが秀逸で、複雑な動作をする情報収集ロボットや、既存のWebサービスをマッシュアップした独自RESTが作れてしまうというシロモノです。


出力形態はRSS、REST、Clipの3種類。

RSSではWebサイトを巡回、必要な情報を収集してRSS形式で出力します。よくあるお手軽HTML-RSSの変換サービスとは異なり、自分で収集ポイントを設定するため、確実に情報取得できます。
RESTは任意のパラメーターを付加してリクエスト送信すると、それに応じた結果を返してくれるというものですが、例えば同サイトのチュートリアルでは、Googleの検索結果の最上部にあるURLとタイトルを返すRobotなどが紹介されています。
Clipとは、既存のWebページを部分的に切り取ったり、寄せ集めたりして、加工したWebページを作るもので、HTMLとして出力されます。

とくに、リンクをクリックしたり、フォームに入力したりしてページからページを動き回って、目的の情報を抽出できるところが特徴で、まさにブラウザを操縦しているのと同様の動きが、当たり前にできてしまうのが驚きです。
Cookies、JavaScript、UserAgent...のような面倒な設定はプログラムが面倒を見てくれます。


巷ではPlaggerやMechというようなPerlのモジュールを駆使して、マッシュアップを行うのは定番と云えるようですが、それと同じようなことをスクリプト言語などの知識が一切なくとも実現できてしまうところが、まさに魅力といえます。