ScalaでGoogle翻訳APIを叩く
ScalaでWebAPIを使ってみようシリーズ第二弾。
今回は遊び心あふれることで定評のあるGoogle翻訳のAPIです。
import scala.io.Source import scala.util.parsing.json.JSON val url = "https://www.googleapis.com/language/translate/v2?key=自分用のキー" val q = "&q=" + java.net.URLEncoder.encode("こんにちは", "utf-8"); val eToJ = "&source=ja&target=en" val api = url + q + eToJ val source = Source.fromURL(api, "utf-8") val str = source.getLines.mkString val some = JSON.parseFull(str) // Any型で返ってくるので、キャスト val result = some.get.asInstanceOf[Map[String, Map[String, List[Map[String, String]]]]] result("data")("translations")(0)("translatedText") source.close
解説
仕様は以下に書いてあります。
Developer's Guide (v2): Using REST - Google Translate API - Google Code
GoogleAPIはGoogleのアカウントを取得して(Gmailなどでも可)申請を出すことでりようできるようになります。
その際、自分用のキーをもらえますので、上記のソースコードに置き換えてください。
うーん、いちいちキーもらったりするのは面倒ですね。もっとお手軽なAPI探してみます。