📜  谷歌翻译python(1)

📅  最后修改于: 2023-12-03 14:57:46.235000             🧑  作者: Mango

谷歌翻译 Python

谷歌翻译 Python 是一种基于 Python 的谷歌翻译 API 的实现,可以实现将文本从一种语言翻译成另一种语言。该工具使用简单、方便,提供多种翻译语言,是一款优秀的文本翻译工具。

安装

请使用以下命令安装谷歌翻译 Python:

pip install googletrans==4.0.0rc1
使用

使用谷歌翻译 Python 时需要创建一个 Translator 实例,然后调用 translate 方法对文本进行翻译。

from googletrans import Translator

translator = Translator()
result = translator.translate('Hello, world!', dest='zh-CN')

print(result.text) # 你好,世界!

这里我们创建了一个 Translator 对象,然后将文本 Hello, world! 翻译成了中文。

参数说明

谷歌翻译 Python 中 translate 方法的参数说明如下:

  • text: 需要翻译的文本。
  • dest: 目标语言,可以是语言简写或者 googletrans.LANGUAGES 中的值,例如 zh-CN 表示中文。
  • src: 源语言,可以是语言简写或者 googletrans.LANGUAGES 中的值,不指定源语言时会自动检测。
  • service_urls: 谷歌翻译 API 的 URL 列表,可以指定多个 URL。
  • timeout: 请求超时时间,单位为秒。
多语言翻译

谷歌翻译 Python 支持多语言翻译,只需要将 dest 参数的值设置为目标语言即可。

from googletrans import Translator

translator = Translator()

text = '''Hello, world!
Bonjour!
こんにちは!'''

result = translator.translate(text, dest='zh-CN')

print(result.text)
# 你好,世界!
# 你好!
# こんにちは!
语言检测

除了可以手动指定源语言,谷歌翻译 Python 还可以自动检测源语言。

from googletrans import LANGUAGES, Translator

translator = Translator()

text = '''Hello, world!
Bonjour!
こんにちは!'''

for lang_code in LANGUAGES:
    result = translator.detect(text)
    if result.lang == lang_code:
        print(LANGUAGES[lang_code], '->', result.lang, result.confidence)
# 英语 -> en 0.8634438
# 法语 -> fr 0.9999972
# 日语 -> ja 0.96740484

上面的代码中,我们使用 detect 方法检测 text 中的语言,并输出检测结果及置信度。

异常处理

使用谷歌翻译 Python 时,可能会遇到网络连接异常、请求超时等问题,因此建议使用 try-except 语句进行异常处理。

from googletrans import Translator
import requests

try:
    translator = Translator()
    result = translator.translate('Hello, world!', dest='zh-CN')
    print(result.text)
except requests.exceptions.RequestException as e:
    print('Error:', e)

也可以在 Translator 对象的构造函数中指定 timeout 参数来设置请求超时时间。

from googletrans import Translator

translator = Translator(timeout=5.0)
result = translator.translate('Hello, world!', dest='zh-CN')
print(result.text)
总结

谷歌翻译 Python 是一款非常方便实用的文本翻译工具,支持多种语言和语言检测功能,使用简单方便,功能完善,建议开发人员在项目中使用。