英語論文を簡単(?)に翻訳するためのツールを作ってみた

6月の終わりから毎週木曜日にWWW2009のサーベイをしています。
サーベイなのでそんなに深く読まないのですが、毎週6本論文に目を通さないといけないのです。
で、英語力のない僕はスペースアルクヤフー翻訳などの翻訳サイトをよく利用するのですが、PDF形式の論文ってコピペすると文末で単語がハイフンで分割されていたり(appli-cationとか)、efficiencyのffiが特殊フォントのffiが使われていてefficiencyになっていたりと、そのまま翻訳サイトやアルクの検索窓に突っ込んでも意味不明な結果しか返さないのです。
で、さすがに分量が多いとそれを手作業で直すのも面倒なわけで、その変のことをやってくれるツールを作ってみました。

開発はAdobeAIRで行いました。
最初に入力エリアに論文の文章をそのままコピペし、翻訳ボタンを押すと上記の様な問題部分をがりがり置換してからGoogleの翻訳API(Google AJAX Language API)に渡して翻訳してくれます。
動作の様子はこんな感じ


で、どうせならと置換されて整形された文中の英単語をダブルクリックするとポップアップでアルクの英和辞典を参照するようにしました。

中身は基本的にごり押しですw
Google AJAX Language APIから返ってくる値もJSONフォーマットなので本来は解析のAPIとか使えばいいのでしょうが、なぜか上手く行かなかったのでごりごりスクレイピングしています。
ということで技術的に特に書くことはないのかなぁ。

ああ、Google AJAX Language APIFlex等のJS以外の環境で使う場合、
http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&langpair=○○%7C××
に「q=翻訳したい文章」をPOSTしてあげればOKです。
○○は元の文章の言語、××は翻訳後の言語を指定します。
注意点として日本語はjpでなくjaです。(これに1時間くらいはまってた…)
結構色んな言語に翻訳できて有用性は高そうです。詳しくはデベロッパーガイドをご覧下さい。
http://code.google.com/intl/ja/apis/ajaxlanguage/documentation/#SupportedPairs


あと、アルクから単語の情報をアルクのページ以外から取ってくるのが規約的にどうか分からないのがちょっと怖いです。
ちなみに、アルクから取ってきた単語情報は最初スクレイピングをして表の形なんかで出すことを目指したのですが、思いのほか上手く行かなかったので、対象部分だけ上手くHTMLとして切り出してmx:HTMLコンポーネントに表示させることで決着を図りました。

まあ、自分のために作ったものだから見た目はどうでもいいのですがw


自分で使うにしても、まだ単語情報を上手く取って来れない単語があったりとバグがあるのをつぶしていかないとなぁ・・・