Google翻译API是一个强大的工具,可以帮助你将文本从一种语言翻译成另一种语言。

使用Python调用Google翻译API,你可以轻松地在你的应用程序中集成自动翻译功能。下面是如何实现这一目标的两种方法;

方法 1:生成翻译请求

该方法通过对谷歌翻译URL进行GET请求,得到网页内容后使用正则表达式进行解析,获得翻译结果;

该方法在中国大陆地区需使用VPN;

import re
import html
from urllib import parse
import requests

GOOGLE_TRANSLATE_URL = 'http://translate.google.com/m?q=%s&tl=%s&sl=%s'

def translate(text, to_language="auto", text_language="auto"):

    text = parse.quote(text)
    url = GOOGLE_TRANSLATE_URL % (text,to_language,text_language)
    response = requests.get(url)
    data = response.text
    expr = r'(?s)class="(?:t0|result-container)">(.*?)<'
    result = re.findall(expr, data)
    if (len(result) == 0):
        return ""

    return html.unescape(result[0])

print(translate("你吃饭了么?", "en","zh-CN")) #汉语转英语
print(translate("你吃饭了么?", "ja","zh-CN")) #汉语转日语
print(translate("about your situation", "zh-CN","en")) #英语转汉语

程序运行结果

Have you eaten?
食べましたか?
关于你的情况

方法 2:使用 google-cloud-translate

google-cloud-translate是 Google Cloud Translation API 的官方 Python 客户端库,提供了与 Google Translate API 交互的接口。

下面是关于如何使用google-cloud-translate的详细指南,包括安装、基本用法和示例代码。

1. 安装

使用 pip 安装google-cloud-translate

pip install google-cloud-translate

2. 配置 Google Cloud

确保你已经设置了 Google Cloud 项目,并启用了 Translation API。你还需要一个服务账户密钥文件(JSON 格式),用于认证。

3. 示例代码

from google.cloud import translate_v2 as translate
from google.oauth2 import service_account

credentials = service_account.Credentials.from_service_account_file('path/to/your/credentials.json')
client = translate.Client(credentials=credentials)

def translate_text(text, target_language='en'):
    result = client.translate(text, target_language=target_language)
    return result['translatedText']

text_to_translate = "你好,世界"
translated_text = translate_text(text_to_translate, 'en')
print("Translated Text:", translated_text)