问题 如何轻松地用python机器翻译?


你曾经能够使用 nltk.misc.babelfish 翻译的东西,但雅虎Babelfish API下降。有没有一种简单的方法可以说,这样做?

>>> import translate
>>> translate('carpe diem', 'latin', 'english')

'seize the day' 

11654
2017-12-20 15:45


起源



答案:


Goslate是一个很好的图书馆使用谷歌翻译: http://pythonhosted.org/goslate/

以下是文档中的示例:

>>> import goslate
>>> gs = goslate.Goslate()
>>> print(gs.translate('hello world', 'de'))
hallo welt

为了从“carpe diem”到“抓住一天”:

>>> print(gs.translate('carpe diem', 'en', 'la'))
seize the day

所以它与以前的Babelfish API基本相同,但是目标和源语言的顺序是切换的。还有一件事 - 如果你需要弄清楚短代码, gs.get_languages() 将为您提供每种支持语言的所有短代码字典: {...'la':'Latin'...}


11
2017-12-20 15:47



太好了,谢谢。虽然它看起来像我前两次尝试它,但现在只给出“HTTPError:HTTP错误503:服务不可用”。我被禁止了吗? - Jono
可能谷歌受到限制......翻译API的限制很低。有关可能的解决方案,请参阅此答案 stackoverflow.com/a/33448911/5224214 - G Brown


答案:


Goslate是一个很好的图书馆使用谷歌翻译: http://pythonhosted.org/goslate/

以下是文档中的示例:

>>> import goslate
>>> gs = goslate.Goslate()
>>> print(gs.translate('hello world', 'de'))
hallo welt

为了从“carpe diem”到“抓住一天”:

>>> print(gs.translate('carpe diem', 'en', 'la'))
seize the day

所以它与以前的Babelfish API基本相同,但是目标和源语言的顺序是切换的。还有一件事 - 如果你需要弄清楚短代码, gs.get_languages() 将为您提供每种支持语言的所有短代码字典: {...'la':'Latin'...}


11
2017-12-20 15:47



太好了,谢谢。虽然它看起来像我前两次尝试它,但现在只给出“HTTPError:HTTP错误503:服务不可用”。我被禁止了吗? - Jono
可能谷歌受到限制......翻译API的限制很低。有关可能的解决方案,请参阅此答案 stackoverflow.com/a/33448911/5224214 - G Brown