Yahoo! ルビ振りWebサービスをブックマークレット化
先日 Yahoo! Japan が公開したルビ振りWebサービスを使って、選択した漢字仮名まじり文をひらがなに変換するブックマークレットを作ってみました。 Web ページを閲覧中、「この漢字なんて読むんだ?」なんてときにでもお使いください。
なお、動作確認は Opera, Firefox, Safari で行っています。申し訳ありませんが、 IE では動きません。どなたか IE 対応版を作ってみませんか(^^;
使い方
早速ですが、ブックマークを使うには、まず以下のリンクをブックマークしてください。
あとは、ページ中の適当な漢字仮名まじり文を選択してブックマークレットを実行するだけです。少し待つとダイアログに変換結果が表示されます。
仕組み
仕組みというほど大層なことはやっていません。単にルビ振りWebサービスにリクエストを投げてその結果を表示しているだけです。ただ、ルビ振りWebサービスは JSONP をサポートしていないので、クロスドメインの制約に引っかかって JavaScript だけではリクエストを投げることができません。そこで、 Yahoo! Pipes でルビ振りWebサービスのパイプを作り、その結果を JSONP で取得しています。日米 Yahoo! の見事なコンビネーションですね(笑)。参考までに JavaScript のソースコードも掲載しておきます。
Yahoo! Pipes については以前にもご紹介しましたが、その後も地道に改良が進んで、最近では任意の XML や HTML までデータソースとして取り込めるようになっています。つまり、 Yahoo! Pipes を経由することでネット上の大半の公開リソースに JavaScript からアクセスできるわけです。素晴らしいですね。今回利用したパイプはこちらですので、よろしければ参考にしてください。とても単純なパイプです。
そして今回の主役であるルビ振りサービスですが、こちらも興味深い API だと思います。基本的に、以下のような簡単な URL へリクエストを投げるだけで、文字列をひらがなやローマ字に変換できます。
http://jlp.yahooapis.jp/FuriganaService/V1/furigana?appid=アプリケーションID&sentence=文字列
結果は XML で、単語ごとに漢字、ひらがな、ローマ字のデータが取得できます。同じ Yahoo! のかな漢字変換Webサービスと併用して、間違った漢字をその場で再変換できる校正サービスとか作れそうですね。
注意点
実は Yahoo! Pipes 経由のアクセスには欠点がありまして、リクエスト数の上限に引っかかりやすいです。ルビ振りWebサービスは同じ IP アドレスからのリクエストを一日 50,000 件までに制限しているのですが、 Yahoo! Pipes のプロキシを通しているので、これが全ユーザーに対して適用されます。仮に Yahoo! Pipes がひとつのゲートウェイから全リクエストを投げているとすれば、 10,000 人のユーザーがそれぞれ 5 回使うと上限に達してしまいます。
まあ、このブックマークレットにそれほどのユーザーがつくとは思えませんが、他に同様に Yahoo! Pipes 経由でアクセスするアプリケーションがあると、それらも合計されるので、場合によってはアクセス拒否が多発することもあるかもしれません。その場合には Flash でアクセスする方法でも試してみようかな、と思っています。
以上、本日は Yahoo! ルビ振りWebサービスを使った漢字→よみがな変換ブックマークレットをご紹介しました。地味にそこそこ便利なので、ぜひ使ってみてください。
詳しくはこちらの記事をどうぞ!
この記事にコメントする