PHPでMicrosoft Translate APIの翻訳機能を使ってみる

Microsoft Translate API PHP

medium_2264763977
photo credit: Robert Scoble via photopin cc

レディース・アンド・ジェントルメン!どうもOsamuです。

以前とある外国人向けのWebサイトを作る事となりました。外個人向けの、という事はもちろん英語です。高校時代バスケ部でアメリカ人2人、ロシア人1人とともに学生生活を過ごした私。しかし、3人とも日本語ペラペラでした。困ったものです。

という事で英語力の乏しい私は、機械翻訳APIを活用して自動的に翻訳してもらう事を決意したのでした。

機械翻訳のAPIは2つあります。GoogleとMicrosoftです

medium_6020157534
photo credit: Michael Kappel via photopin cc

尚、機械翻訳APIは2つあります。Google TranslatとMicrosoft Translateです。どちらかと言うと翻訳といえばGoogleの方が有名でしょうか。

しかし、Google Translate APIは有料です。使うにはお金が必要となります。Microsoft Translate APIは月20万文字までの翻訳利用であれば無料です。

又、他の制限について問合せてみましたが、2014年6月20日時点ですとアメリカのMicrosoftより以下のような制限があると回答を頂きました。

・1時間4000万文字まで
・要求の数に制限はなし



Windows Azure Marketplaceでまずは無料登録

まず使うにはWindows Azure Marketplaceに無料登録をする必要があります。200万文字の無料に契約しましょう!

Windows Azure Marketplace - Microsoft Translator

Translator



登録したらPHPのプログラムを書いてみる

では簡単な翻訳プログラムを書いてみましょう!以下のようなPHPファイルを作成します。

<?php
const APPID = 'your APPID';
$text = '彼はベンですか?いいえ彼はベンではありません。';
$to = 'en';

$ch = curl_init('https://api.datamarket.azure.com/Bing/MicrosoftTranslator/v1/Translate?Text=%27'.urlencode($text).'%27&To=%27'.$to.'%27');
curl_setopt($ch, CURLOPT_USERPWD, APPID.':'.APPID);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
$result = explode('<d:Text m:type="Edm.String">', $result);
$result = explode('</d:Text>', $result[1]);
$result = $result[0];
echo $text." -> ".$result;
?>

参考にしたページ:Microsoft Translatorに登録。クラウドを利用して翻訳プログラムを簡単に作る。


コマンドで出力

実際にまずはコマンドラインで作成したPHPファイルを実行してみましょう。

こんな感じでしっかりと翻訳してくれます。

# php tran.php
彼はベンですか?いいえ彼はベンではありません。 -> He is Ben? No he is not Ben.


Webブラウザで出力

続いてWebブラウザでも出力してみましょう。
もちろん先程と同様のPHPファイルを使っていますので、しっかりと翻訳した結果を返してくれます。

tran


月に20万文字無料で使える強力な翻訳API

Googleでも有料にしているってのに無料で20万文字まで使える翻訳API。さすがはMicrosoft、頭が上がりません。もうアメリカに足を向けて寝ないようにします。

便利ですので翻訳が必要になった方はどうか試してみてください。

関連記事

コメント

    • yama
    • 2015.01.19

    こんにちは、マイクロソフトの翻訳のご紹介ありがとうございます。参考にさせていただきました。

    ところで月20万ときさいされていますが、月200万ではないでしょうか?

    • user
    • 2015.03.11

    無料枠は20万ではなく、200万のようです。

カテゴリー

お問い合わせはコチラ!