You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用googletrans库翻译时如何仅提取返回的纯翻译文本

问题场景

使用Python的googletrans库编写命令行翻译工具时,直接打印translator.translate()方法的返回值,会输出包含源语言标识、目标语言标识、翻译文本、发音、额外数据的完整Translated对象,示例输出如下:

Translation > Translated(src=en, dest=es, text=Hola, pronunciation=None, extra_data="{'translat...")

当前使用的原始代码:

from googletrans import Translator

# Taking input for language to be translated
translate_from = input("What language would you like to translate from? ")
translate_to = input("What language would you like to translate to? ")

# Taking input for text to be translated
translate_text = input("Please enter your text to be translated ... ")

# translate languages
translator=Translator()

print("Translation > ", translator.translate(translate_text, src=translate_from, dest=translate_to))

需求是仅提取返回结果中的翻译文本,去除冗余输出,需要适合Python初学者的简单实现方式。

解决方法

Translated是googletrans定义的结构化结果类,翻译后的纯文本内容直接存储在实例的.text属性中,直接读取该属性就能拿到无多余信息的翻译结果,不需要做复杂的字符串切割处理。

修改后的完整代码仅调整了结果接收和打印的逻辑,改动量极小:

from googletrans import Translator

# 输入源语言代码
translate_from = input("What language would you like to translate from? ")
# 输入目标语言代码
translate_to = input("What language would you like to translate to? ")

# 输入待翻译文本
translate_text = input("Please enter your text to be translated ... ")

translator = Translator()
# 接收翻译返回的结果对象
trans_res = translator.translate(translate_text, src=translate_from, dest=translate_to)
# 仅打印纯翻译文本
print("Translation > ", trans_res.text)

补充说明

  • 除了翻译文本外,结果对象的其他信息也可以通过属性直接读取:
    • 源语言代码:trans_res.src
    • 目标语言代码:trans_res.dest
    • 发音信息(仅部分支持的语言会返回内容):trans_res.pronunciation
  • 如果运行代码时出现接口调用报错,先卸载已安装的googletrans版本,执行如下命令安装稳定可用的候选版本即可:
    pip install googletrans==4.0.0-rc1
    

内容的提问来源于stack exchange,提问作者Zayden Tibbets

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 23:09:24