あったらしくるえるはてなくしょん

id:kskmeuk あったらしく

Google Translate API v2 有料化と v1廃止に伴って、Microsoft Translatorを使って見る余地はあるかもという話

Google Translate API の有料化と廃止

私は、fkoji 先生の Google、Translate APIやBlog Search APIなどを廃止へ - F.Ko-Jiの「一秒後は未来」 で最初に知ったのですが、Google の翻訳してくれるAPI の、Google Translate API が有料になります。
詳細は、v1 は 2011年の12月1日で完全に廃止。v2 は有料化で、12月1日までは小さなQuota がかかってはいますが、利用はどうにか可能という状態で、12月からは有料になります。

それで、ごくごく小さな、ちょっとした翻訳サービスを使ってた人には結構なインパクトだったんです。私としても円高を満喫だ!! 円様*1にひれ伏せ米帝などと公安9課のように思っていたわけではないですが、http://happ.me なる、簡単な翻訳サービスを面白がって創った手前ちょっとどうしようか考えていました。翻訳は有料になるけど、$20/month はちょっとやりすぎ。でも止めるのもちょっと惜しい。

Google もちょっとずつオトナになっていくのはしょうがないことですが、なんていうか、有料のAPIサービスつかってまで回すほど儲かっても居ないし、まあ自分が買い物する程度には元をとったとかはありますが、うみゅーっとなっていました。
ちなみに、円高ドル安はもう少しつづいているので、それなりに Amazon.com での買い物はお得で、最近みつけた掘り出し物はMBTの靴だったりします。サイズが判明してるなら2足目とかにすごくよいです。日本では付加価値があるのも確かですが、単純な価格で1/3くらいです…。
Amazon.com の MBT についてはこちらをご確認ください。amazon.com 扱いになっているものだったら、買えます。私も買いましたし…。MBT の靴はたしかにすごかったですので、これは時期を見てまた。

と、ときどきは役に立ちます。はいはい、宣伝乙。

ですが、それでも、泣いても笑っても2011年の12月は来てしまうし、そしたら、Google Translate API はとまってしまう。さらに、12月16日になれば、貴族のタケルンバ卿とか私とかは歳をとってしまうしで、そのまえに、ちょっと翻訳どうにかせねばなーと思っていました。

Microsoft Translatorというのがあるらしい。

それで、見つけたのがこの記事です。
第38回 使ってみようMicrosoft Translator:使ってみよう! Windows Live SDK/API|gihyo.jp … 技術評論社
技術評論社えらい!! 私も連載したい!! と、思う程度にすごいです。この記事の通りにまずは Bing API の登録をしましょう。それで、あとはAPIアクセスをすると結果がかえってきます。

少し古い記事が状況によって、再度注目されることというのはありますよね。

それで、Microsoft Translator ですが、実にシンプルです。Google 翻訳 API では JSON とかで結果をとってきていて、私はサーバ側でやり取りしてデータ確認とかしていたので、PythonJSON 解析してました。

んで、リクエストのURIGoogle Translate API の場合は、

https://www.googleapis.com/language/translate/v2?key=YOUR_API_KEY&q=翻訳する文字列&source=ja&target=en

みたいな感じでリクエスト投げるんです。

で、Microsoft Translator ですが、だいたい同じリクエストになります。

http://api.microsofttranslator.com/V2/Ajax.svc/Translat
e?appId=YOUR_BING_API_KEY&text=翻訳する文字列&from=ja&to=en

という感じ。上記記事にもあるように、Ajax, HTTP, SOAP と選んでお伺いをたてられます。詳しくはTranslator Text Documentation - Quickstarts, Tutorials, API Reference - Azure Cognitive Services | Microsoft Docs をご覧頂くのが良いかと。

これで、たとえば「紅の豚」とお問い合わせをすると"Porco Rosso"と結果が返ってきます。私の場合は、こんな風にちょっと特別な原題とその国ローカルのタイトルの間をよろしくやっていただければ、それでOKなので、とりあえず、Microsoft にありがとうなのでした。Ajax ならダブルクォートされた結果がシンプルに戻りますし、HTTP なら XML で戻ります。あとはパースして必要なところだけを取り出せばOKです。ただ、BOM がのってきますので、処理をしましょう。

まあその…、お前、林檎狂信者の癖にM$乙とか言わないでねw、最近そうでもないしw。あと、むしろ林檎信者ならば、MSの援助を一度程度受けてこそ乙というものです。

要注意ポイントで、MicrosoftUTF-8 の大好きなBOMが

あとは、帰って来た文字列でちょっと注意事項があって、EF BB BF の BOMに気をつけましょう。

最初、翻訳の代替見つかった。やったー !! MSありがとう!!ありがとう!! と思った。だけど、翻訳されたデータの再利用でなぜか失敗してなんじゃろなー… と、思ってたら、さすがのMSでメモ帳の思い出とかある方も居ると思うんですけど、EF BB BF の BOMがのって来てたんですよね。それで、問合せが全部失敗するというね…。
というわけでBOMがのって来ちゃうので、Python なら、冒頭の '\xef\xbb\xbf' を除去するとかで、対処が必要でしたので、ご利用の際にはお忘れなき用…。

まとめ

というわけで、残すところは、あと2週間ばかりとなりましたが、Google Translate API で困っている場合には、Microsoft Translator が助けになるかもしれませんよというエントリなのでした。私はちょうど助かったw。

あとは、一見、目には見えないBOM には気をつけてくださいね。ということで。

では、良いAPIで、良い人生を。

BOMB (ボム) 2011年 12月号 [雑誌]

BOMB (ボム) 2011年 12月号 [雑誌]

これは、BOMB(笑)

むしろ、良いBOMBで、良い人生を(笑)

スーパーボンバーマン2

スーパーボンバーマン2

*1: まどかさまと読むとちょっとかわいい