今回のテーマは「Web API」
2年くらい前からWeb2.0という言葉とともに広まってきた"Web API"。各種Webサービスがシステム向けにアクセスできるインタフェースを公開し、それらを通じて様々な情報を取り出したり登録したりして新しいサービスを構築することができる。
Webアプリケーションは同じWeb上のサービスであるWeb APIを様々に活用している。表立って見えなくとも、小さな機能としてWeb APIを使っていることはよくある。また、オープンソースについてもそれは同様で、Web APIを利用したソフトウェアが多数存在している。
今回はそんなWeb APIというキーワードに注目してWebアプリケーション、オープンソース・ソフトウェア(OSS)を紹介したい。とはいえ、Google MapsやFlickrなどは有名であり、ここで紹介するまでもないだろう。よりマニアックで特徴的なものを紹介したい。
今回紹介するOSS・Webアプリ
『AlchemyGrid』 Web APIを作成する
『PicResize』 Webベースの画像編集アプリケーション
『Google Docs Bar(gDocsBar)』 GoogleドキュメントをFirefoxサイドバーに
『Bubbles』 Webアプリケーションをタスクトレイに
Web API、なければ自分で作ればいい
名称 | AlchemyGrid |
---|---|
URL | http://grid.orch8.net/extractions/grab |
『AlchemyGrid』は簡単にいえば、自分でWeb APIを作成するためのWebサービスだ。同様の技術として、Yahoo Pipes!が挙げられる。HTMLをパースして、正規表現などを使ってデータを取り出していくといった具合だ。だが、Yahoo Pipes!は本来はマッシュアップ作成サービスであるため、ユーザビリティが高いとはいえない。正規表現を使う時点で難度が上がってしまう。
そこでAlchemyGridだ。AlchemyGridは要素をビジュアル的に選択する。選択する要素は四角い枠で囲まれて表示されるのでわかりやすい。そして要素を選択したら、その要素に名前を付ける。それを繰り返すだけだ。同じ要素を繰り返し取得することも可能で、うまく使えばRSSフィードを配信していないサイトでもRSSを作成できるようになる。
取得したデータはRSSやXML、テキスト、CSVといった形式で取得できる。RSSフィードを配信していないサイトはまだまだ多く、Web APIともなれば提供しているサイトのほうが稀だ。コンテンツの所有権やWebサイト提供側にとっては広告が表示されなくなるといった問題もあるが、開発者にとっては便利なWebアプリケーションになるだろう。
画像編集もWebブラウザ上で
名称 | PicResize |
---|---|
URL | http://gui.picresize.com/picresize2/ |
最近は何でもオンライン上で、という流れだがついに画像編集までもオンラインで行われるようになってきた。『PicResize』がそれで、オンライン上でリサイズ、切り抜き、回転といった画像編集のほか、文字や線を引くなどの操作ができるようになっている。
その場で利用することはもちろん、Web API(SOAP)を通じて処理することも可能。さらに、画像のURLを指定して取得し、そのまま編集という機能を利用できる。都度アップロードして処理するのは面倒に感じるが、URLを指定しての編集であれば手軽だ。
編集が終わった画像はJPEG/GIF/PNG形式でダウンロードできるようになっている。SOAPを駆使すれば、バッチ処理なども可能になるだろう。
Googleドキュメントをサイドバーに
名称 | Google Docs Bar(gDocsBar) |
---|---|
URL | http://www.gdocsbar.com/ |
Googleドキュメントはお使いだろうか。離れた場所の相手とオフィスドキュメントをやり取りする必要があるときには非常に便利だ。便利さゆえに、各ドキュメントにアクセスする際にGoogleドキュメントのトップページにアクセスするのが手間に感じていた。
『Google Docs Bar』はそんな手間さえ省いてくれるソフトウェア。FirefoxのサイドバーにGoogleドキュメントを表示してくれる。文書の一覧はもちろん、検索もサイドバーから実行できる。クリックすれば、ブラウザ画面にドキュメントを表示してくれる。
特に便利なのはGoogle Docs Barの下部に表示されるアップロードエリアで、ここにオフィスドキュメントをドラッグ&ドロップするだけでアップロードを実行してくれる機能だ。アップロードの手間が大幅に軽減されるので、Googleドキュメントがさらに便利になる。
タスクトレイから扱うWebアプリケーション
名称 | Bubbles |
---|---|
URL | http://www.3d3r.com/bubbles/ |
この『Bubbles』はオープンソースではなくフリーウェアなのでご注意いただきたい。Bubblesは有名な各種Webアプリケーションをタスクトレイに格納できるソフトウェアだ。IEを独自のウィンドウ内に立ち上げて、タスクトレイに格納している。
面白いのはタスクトレイに入っているWebアプリケーション(例えばGoogleカレンダー)を右クリックするとメニューが表示される点だ。ここでスケジュール追加を選べば、該当ウィンドウが表示される。これはGoogleカレンダーの各アクションを起こすリンクを設定してあるからで、その設定はJavaScriptでできる。つまり自分の好きなWebアプリケーションを設定すれば、タスクトレイから簡単にアクセスできるようになるのだ。
また、flickrについてはファイルアップロード機能も実装されている。flickrのウィンドウ内にファイルをドラッグ&ドロップすれば、ファイルが自動的にアップロード開始される。これもまたJavaScriptベースなので、同じような仕組みを取り入れることはできるだろう。
タスクトレイからアクションを呼び出すことも可能 |
Bubblesで初期に登録されているWebアプリケーションはWeb APIを提供しているものがほとんどだ。そしてそれらをJavaScriptから扱えるようにしているのがBubblesだ。このふたつを組み合わせれば、まるでデスクトップアプリケーションさながらにWebアプリケーションを扱えるようになる。
いかがでしたか?
最近のWebアプリケーションではリリースと同時にWeb APIを提供していることが多くなってきている。また、単純なWeb APIほど、開発者の感性を刺激して面白いサービスが登場してくる。すると開発者ではないユーザがさらに増えて……という好循環が生まれていく。面白いWebアプリケーションの基準として、Web APIを提供しているか否かを見てみるのもおすすめだ。
著者プロフィール
MOONGIFT 中津川 篤司(なかつがわ あつし)
1978年生まれ。オープンソース紹介サイト「MOONGIFT」管理人。プログラマ、SE、ITマネージャを経て、オープンソースのビジネス活用を推進する。現在は独立し、Webサービスのコンサルティング、プロデュースを行う。