rubyでgoogle翻訳を使ってみる

翻訳BOTでも作ってみようかなって思ってgoogle翻訳は面白いから(精度は関係ない!)ちょっと調べてみたら
gemにEasyTranslateって言うのがありました(https://github.com/seejohnrun/easy_translate

使い方はドキュメントを見ればすぐ解るのですが、いかんせんドキュメント通りじゃ動きません。

irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'easy_translate'
=> true
irb(main):003:0> EasyTranslate.translate('Hola, mundo', :from => :spanish, :to => :en)
EasyTranslate::EasyTranslateException: Suspected Terms of Service Abuse. Please see http://code.google.com/apis/errors
        from /var/lib/gems/1.8/gems/easy_translate-0.2.1/lib/easy_translate/translator.rb:128:in `api_call'
        from /var/lib/gems/1.8/gems/easy_translate-0.2.1/lib/easy_translate/translator.rb:61:in `translate'
        from (irb):3

多分ドキュメント通りにやると上記のエラーが出ると思います。(実行環境 ruby 1.8.7

何が足りないって、APIKEYが足りなかったんですよ!

https://code.google.com/apis/console/#project:78960694122
ここ行ってAPIKEY取得して再度コンソールでトライ!

irb(main):011:0> EasyTranslate.translate('Hola, mundo', :from => :spanish, :to => :en, :key => GOOGLE_API_KEY)
=> "Hello world"

これで意図した動きになりました。