近期在做的一个任务,但是网上的资料甚少,经过了几番波折,终于弄好了。实现过程很简单,拿出来共享一下,免得大家像我一样找了半天。
谷歌翻译升级到2.0后变为收费版本的,因此首先需要向谷歌申请一个key。付费标准是 每100万个文本字符20美元(觉得小贵啦)。
谷歌翻译的工作过程:
1.谷歌翻译的请求网址:
1)API key:需要向谷歌付费后,会给你一个key;
2)Target language:即你需要翻译的目标语言;
3)Source text string:需要翻译的文本(需要少于2k)。
2.下面是给不同的参数的一些例子,可以根据自己的需要来对该url进行传参:
1)指定source和target
谷歌翻译升级到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,就对多段文本进行翻译
" data " : {
" translations " : [
{
" translatedText " : " Hallo Welt "
}
]
}
}
https:
//
www.googleapis.com
/
language
/
translate
/
v2?key
=
INSERT
-
YOUR
-
KEY
&
source
=
en
&
target
=
de
&
q
=
Hello
%
20world
&
q
=
My
%
20name
%
20
is
%
20Jeff
JSON
{
" data " : {
" translations " : [
{
" translatedText " : " Hallo Welt "
},
{
" translatedText " : " Mein Name ist Jeff "
}
]
}
}
3)不指定source,直接翻译成目标语言
" data " : {
" translations " : [
{
" translatedText " : " Hallo Welt "
},
{
" translatedText " : " Mein Name ist Jeff "
}
]
}
}
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实现的谷歌翻译源码:
" data " : {
" translations " : [
{
" translatedText " : " Hallo Welt " ,
" detectedSourceLanguage " : " en "
}
]
}
}
#
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)
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 " ]
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)
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 " ]