Google Language APIは素晴らしくて、AjaxのAPIがしっかり用意されているほか、RESTfulなAPIとして以下のようなものも使えます。
http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q={文字列}&langpair={変換前言語}|{変換後言語}
さらに、珍しく日本語ガイドがあるのも良いですね。
http://code.google.com/intl/ja/apis/ajaxlanguage/documentation/
さて、このRESTfulAPIで取得する結果はJSONになっているのですが、シングルコーテーション(アポストロフィ)は' に文字参照されて帰ってきます。
Pythonは特に関係ないんですが、文字参照されたままだと色々困ります。
標準モジュールで簡単にデコードするものが見つからなかったので、http://d.hatena.ne.jp/MOOK/20100407/1270601539を使わせて頂くことにしました。
トータルでは、以下のようなコードになります。
import urllib import json #参照URLの実体参照解除コードを、entity_referenceモジュールにした import entity_reference text = urllib.quote("私はピーターです") url = 'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=%s&langpair=ja|en' % text result = json.loads(urllib.urlopen(url).read()) print entity_reference.encode(result['responseData']['translatedText']) #I'm peter
Twitter APIなども、実体参照で返ってきたはずなので、注意が必要ですね。