本文目录导读:

- 通用原理(无论哪个API,步骤基本如下)
- 示例1:使用 DeepL API(推荐,翻译质量高,英文友好)
- 示例2:使用百度翻译API(国内常用,支持中文友好)
- 常见问题与解决方法
- 如果不想写代码:直接用工具或库
“翻译API的调用”通常指的是通过HTTP请求向翻译服务(如Google翻译、DeepL、阿里云翻译、百度翻译等)发送文本,并获取翻译结果。
由于不同的翻译服务商(Google、DeepL、百度、阿里等)的接口地址、认证方式、请求参数都不同,具体调用方式有差异。
下面以目前比较流行的 DeepL API 和 百度翻译API 为例,分别展示如何从零开始调用。
通用原理(无论哪个API,步骤基本如下)
- 注册账号:去目标翻译平台(如阿里云、百度、DeepL)注册。
- 创建应用/获取密钥:获得
App ID/Access Key/API Key等认证信息(通常需要付费或实名认证)。 - 阅读文档:找到该平台的“API调用说明”,确认请求URL、请求头(Headers)、请求体(Body)格式。
- 发送请求:通过代码(Python、JavaScript、Java等)或工具(Postman、curl)发送HTTP POST/GET请求。
- 解析响应:接收JSON格式的返回结果,提取翻译后的文本。
示例1:使用 DeepL API(推荐,翻译质量高,英文友好)
DeepL 提供免费额度(每月50万字),用 curl 命令举例:
步骤
- 注册 DeepL API 获取
API Key(密钥)。 - 打开终端(Mac/Linux)或Git Bash(Windows)。
请求命令(向DeepL发送翻译)
curl -X POST 'https://api-free.deepl.com/v2/translate' \
-H 'Authorization: DeepL-Auth-Key 你的DeepL密钥' \
-H 'Content-Type: application/json' \
-d '{
"text": ["Hello, how are you?"],
"target_lang": "ZH"
}'
返回结果(JSON)
{
"translations": [
{
"detected_source_language": "EN",
"text": "你好,你怎么样?"
}
]
}
说明:
text:要翻译的文本(支持数组,一次可传多句)。target_lang:目标语言,“ZH”是中文,“JA”是日语等。Authorization:Header中传入密钥。
示例2:使用百度翻译API(国内常用,支持中文友好)
百度翻译需要先申请“通用翻译API”接入。
步骤
- 注册百度翻译开放平台,创建应用。
- 获得
AppID和Secret Key(密钥)。 - 参数需要
sign签名(加密验证)。
用Python调用示例(推荐新手)
import requests
import hashlib
import random
import json
def baidu_translate(text, from_lang='auto', to_lang='zh'):
appid = '你的百度翻译AppID'
secret_key = '你的密钥'
url = 'https://fanyi-api.baidu.com/api/trans/vip/translate'
# 生成随机字符串(需要与appid+text+salt+key拼接做md5)
salt = str(random.randint(32768, 65536))
sign_str = appid + text + salt + secret_key
sign = hashlib.md5(sign_str.encode()).hexdigest()
params = {
'q': text,
'from': from_lang,
'to': to_lang,
'appid': appid,
'salt': salt,
'sign': sign
}
response = requests.get(url, params=params)
result = response.json()
# 提取翻译结果
if 'trans_result' in result:
return result['trans_result'][0]['dst']
else:
return '翻译失败:' + str(result)
# 测试
print(baidu_translate('I love programming.'))
# 输出示例:我热爱编程。
注意:
- 百度翻译的签名算法:
appid + text + salt + secret_key做MD5。- 免费版有调用频率限制(QPS限制)。
常见问题与解决方法
问题1:返回 “401 unauthorized” / “认证失败”
- 原因:API Key 错误或未正确放到请求头中。
- 解决:检查密钥,并确认是否按文档要求放在
Authorization或Header或Body。
问题2:返回 “请求过于频繁” / “403”
- 原因:超过免费额度或QPS(每秒请求数)限制。
- 解决:降低请求频率,或升级付费套餐。
问题3:返回乱码或不翻译
- 原因:
target_lang参数填错(如“中文”应填zh而非cn)。 - 解决:查看文档确认语言代码(如DeepL用
ZH,百度用zh)。
问题4:没有找到免费的API
- 建议:
- DeepL免费版(每月50万字)足以满足个人或小项目。
- 百度翻译标准版免费额度较低,但入门方便。
- 如果只是临时使用,也可以直接用浏览器控制台抓包(不推荐生产环境)。
如果不想写代码:直接用工具或库
- Postman:可视化工具,填入URL、Headers、Body,直接发送测试。
- curl命令(如上所示)适合Unix/Linux/Mac。
- Python包
translators或googletrans(非官方,可能不稳定)。from translators import translate_text result = translate_text('Hello', to_language='zh') print(result) # 输出“你好”
| 步骤 | 具体操作 |
|---|---|
| 选择平台 | 推荐:DeepL(质量好)、百度/阿里(国内方便) |
| 获取密钥 | 注册应用,获得API Key / AppID |
| 阅读文档 | 查看请求地址、参数、签名方式 |
| 发送请求 | 用curl、Python、Postman发送POST/GET |
| 处理响应 | 解析JSON,提取翻译文本 |
如果你能告诉我你想用哪种语言(Python、JavaScript、Java) 以及目标翻译平台(百度、DeepL、阿里),我可以给你一个可以直接复制运行的完整代码。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播