使用Python进行谷歌翻译的最佳方法

31 投票
7 回答
58772 浏览
提问于 2025-04-17 23:29

我正在尝试把很多英文文本文件翻译成其他几种语言。我们在项目中使用Python,打算先用谷歌翻译服务来翻译这些文件,然后再手动纠正错误。

我想到了两种翻译的方法:

  1. 使用Python的谷歌翻译API。这里是:goslate 1.1.2: Python包

  2. 尝试直接用谷歌翻译网页进行编程,也就是把我们想翻译的文本输入进去,模拟HTTP请求,然后处理返回的结果。谷歌翻译

有没有人有更好的建议?

7 个回答

0

使用这个

这段代码使用了谷歌翻译模块,免费使用。

通过这段代码,你可以把任何语言翻译成任何语言,还能获取发音。

from googletrans import Translator, LANGUAGES
from googletrans.models import Translated

lang = list(LANGUAGES.values())
print("Welcome to Py_Guy Translate")
input_text = input("Please Enter Your Text in english:\n")
out_lang = input("Please enter output language name (ex.-hindi,gujarati,japanese:\n 
").lower()
if out_lang not in lang:
    print("Sorry This Language is not available to translate")
else:
    translator = Translator()
    translated = translator.translate(text=input_text, src="english",dest=out_lang)
    translated = str(translated).split(", ")
    converted = translated[2]
    pro = translated[3]
    print(converted)
    print(pro)
1

最简单的方法之一是使用Selenium来获取单词和短语的翻译。

下面是一段代码,它可以获取英文单词并返回波斯语(法尔西语)的翻译。所有内容在Github的说明文件中都有解释:

https://github.com/mnosrati/Google-Translate-Farsi

10

试试使用googletrans这个模块。比如说:

from googletrans import Translator


translator = Translator()  # initalize the Translator object
translations = translator.translate(['see if this helps', 'tarun'], dest='hi')  # translate two phrases to Hindi
for translation in translations:  # print every translation
    print(translation.text)

# Output:
# देखें कि इस मदद करता है
# तरुण

这里有支持的语言(总共106种)及其ISO639-1代码的字典:

import googletrans


print(googletrans.LANGCODES)  # {language name: iso639-1 language code}
# or
print(googletrans.LANGUAGES)  # {iso639-1 language code: language name}

想了解更多信息,可以查看文档

26

我自己做了一个可以在Python中使用的谷歌翻译功能;)
你可以试试这个链接:https://github.com/mouuff/Google-Translate-API

17

其实,谷歌确实有一个官方的翻译接口,叫做API,它使用的是REST这种方式。你可以在这里查看详细信息。需要注意的是,这个API是收费的,没有免费的使用额度。

撰写回答