
在不少项目开发中,翻译是绕不开的需求。
无论是应用的多语言界面、文本处理任务中的自动翻译,还是为了做内容聚合、数据清洗而批量转换语言,开发者往往需要和各种平台的 API 打交道。
然而,真正开始集成时就会发现一个稍显尴尬的现实:
不同平台的接口格式不一样,而且每个平台的参数、返回字段和调用方式几乎都不统一。写一次适配就够麻烦了,更别说在多个平台间切换、对比翻译效果。
如果只是为了让应用“能用上翻译”,结果前期花了一大堆时间处理密钥申请、接口适配、报错调试,本末倒置。
近期我在 GitHub 上看到一个非常省心的解决方案:一个名为 Translators 的开源 Python 库。

它把谷歌、必应、百度、阿里等 37 个主流翻译平台全部集成到一个 Python 库里,统一了接口。
最重要的是不需要任何 API 密钥,还支持 450+ 语言互译。
对于开发者来说,这相当于是一个翻译服务中间层,省掉了大量不必要的集成工作。
Translators 是一个轻量级的三方 Python 库,安装极为便捷。
支持以下三种安装方式:
# PYPI
pip install --upgrade translators
# Conda
conda install conda-forge::translators
# Source
git clone https://github.com/UlionTse/translators.git
cd translators
python setup.py install代码调用示例:
import translators as ts
q_text = '季姬寂,集鸡,鸡即棘鸡。棘鸡饥叽,季姬及箕稷济鸡。'
q_html = '''<!DOCTYPE html><html><head><title>《季姬击鸡记》</title></head><body><p>还有另一篇文章《施氏食狮史》。</p></body></html>'''
### usage
_ = ts.preaccelerate_and_speedtest() # Optional. Caching sessions in advance, which can help improve access speed.
print(ts.translators_pool)
print(ts.translate_text(q_text))
print(ts.translate_html(q_html, translator='alibaba'))
### parameters
help(ts.translate_text)命令行翻译模式(参数罗列):
>fanyi --help
usage: fanyi input [--help] [--translator] [--from] [--to] [--is_html] [--version]
positional arguments:
input raw text or path to a file to be translated.
options:
--help show help information.
--translator e.g. bing, google, yandex, etc...
--from from_language, default `auto` detected.
--to to_language, default `en`.
--is_html is_html, default `0`.
--version Show version information.Translators 把 37 家翻译平台封装成统一接口,完全免费使用,一行代码即可调用,甚至不需要申请任何 API Key。
把低效的事情做成高效,把复杂的事情封装成简单,把繁琐的流程变成一个函数调用的工具。
对于想要快速为项目接入翻译功能的开发者来说,它是一款足够轻量、实用,并且能够显著节省时间的开源工具。
如果你正需要为项目加入翻译功能,不妨试试这个库,也许能让你的工作流轻松不少。
GitHub 项目地址:https://github.com/UlionTse/translators

如果本文对您有帮助,也请帮忙点个 赞👍 + 在看 哈!❤️
在看你就赞赞我!
