amari3のはてなダイアリー このページをアンテナに追加 RSSフィード

2011-12-10

[][][][]PerlMicrosoft Translator API を使って翻訳するコードを書いてみた

Microsoft が提供している、Microsoft Translator API を Perl からコールして翻訳するコードを書いた。man page とか perldoc で英語を読む時に、分からない文章をコピーして、翻訳サイトに貼り付けるのが面倒くさくなったんで、コマンドラインから翻訳出来たら便利だなと思って作ってみた。

ソースコードgithub に上げておきました - https://github.com/amari3/p5-translate.pl

デベロッパー登録

API にアクセスするためには、Windows Live の登録とアプリケーションを登録して、アクセスキー(アプリケーションID)を取得する必要がある。

こちらから登録が出来ます - http://www.bing.com/developers/createapp.aspx

デベロッパー用サイト

開発者向けのサイト。ドキュメント等もこちらから閲覧が出来る。

http://www.bing.com/developers

http://www.microsofttranslator.com/dev/

使い方

git clone 等で取り込んで、以下の様にコマンドを実行するだけ。CPAN モジュールの WebService::Simple と Config::Pit は入ってない場合は入れる必要があります。また初回実行時のみアクセスキーの入力が求められます。

デフォルトは英語→日本語の翻訳。

% ./translate.pl "I love sushi."
寿司が大好きです。

オプション指定で日本語→英語の翻訳

% ./translate.pl --from=ja --to=en "チョコレートが食べたいです"
I want to eat is chocolate

オプション指定で日本語→フランス語の翻訳

% ./translate.pl --from=ja --to=fr "チョコレートが食べたいです"
Je veux manger est au chocolat

コマンドラインから簡単に翻訳ができて便利です。

今後やりたいこと

とりあえず、今後やりたいことをまとめてみた。

  • Microsoft Translator API を簡単に使うためのモジュール化
    • WebService::Microsoft::Translator みたいなモジュールを作りたい
  • ヘルプ機能の実装
    • サポートしている言語の一覧表示など
  • モダンな感じに書き直す

まとめ

github にソースコードを上げるのも初めてだし、Web API を仕事以外で利用するのも多分初めて。色々至らない点が多いと思うけど、積極的にアウトプットしていきたいと考えている。つっこみ等がありましたら、コメントやブクマコメントしてもらえると嬉しいです。