Google Translate API
近期在做的一个任务,但是网上的资料甚少,经过了几番波折,终于弄好了。实现过程很简单,拿出来共享一下,免得大家像我一样找了半天。
谷歌翻译升级到2.0后变为收费版本的,因此首先需要向谷歌申请一个key。付费标准是每100万个文本字符20美元(觉得小贵啦)。
谷歌翻译的工作过程:
1.谷歌翻译的请求网址:
https://www.googleapis.com/language/translate/v2?{parameters}
翻译请求的三个参数:
1)API key:需要向谷歌付费后,会给你一个key;
2)Target language:即你需要翻译的目标语言;
3)Source text string:需要翻译的文本(需要少于2k)。
2.下面是给不同的参数的一些例子,可以根据自己的需要来对该url进行传参:
1)指定source和target
https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&source=en&target=de&q=Hello%20world
JSON
{
"data": {
"translations": [
{
"translatedText": "Hallo Welt"
}
]
}
}
2)传入多个q,就对多段文本进行翻译
https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&source=en&target=de&q=Hello%20world&q=My%20name%20is%20Jeff
JSON
{
"data": {
"translations": [
{
"translatedText": "Hallo Welt"
},
{
"translatedText": "Mein Name ist Jeff"
}
]
}
}
3)不指定source,直接翻译成目标语言
https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&target=de&q=Hello%20world
JSON
{
"data": {
"translations": [
{
"translatedText": "Hallo Welt",
"detectedSourceLanguage": "en"
}
]
}
}
3.python实现的谷歌翻译源码:
#coding:utf8
import urllib2
import json
import os,sys
reload(sys)
sys.setdefaultencoding("utf-8")
__author__ = 'chenyu'
class GoogleTranslate:
"""
谷歌翻译类
"""
def google_translate(slef,text,targetlanguage):
text = urllib2.quote(text)www.zzzyk.com
url = "https://www.googleapis.com/language/translate/v2/?key=YOUR_KEY&target="+targetlanguage+"&q="+text
res = urllib2.urlopen(urllib2.Request(url))
dirt = json.JSONDecoder().decode(res.read())
return dirt["data"]["translations"][0]["translatedText"]
补充:web前端 , JavaScript ,