批量翻译:文本翻译词典接口,输出词典基本释义、网络释义、词组、同近义词、例句等信息。
Hi,您好,欢迎使用写逸智云批量翻译API接口服务。如果您想快速体验服务,建议您前往 翻译体验中心 或者在体验中心右下侧找到小程序二维码,扫描进行体验。
本文档主要针对需要集成HTTP API的技术开发工程师,详细描述批量翻译能力相关的技术内容。
如果您有与我们商务合作的需求,可以通过以下方式联系我们:
商务邮箱: AIcloud_Business@corp.youdao.com
如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:
客服QQ:1906538062
智云翻译技术交流QQ 1群: 652880659
智云翻译技术交流QQ 2群: 669384425
智云翻译技术交流QQ 3群: 807539209
智云翻译技术交流QQ 4群: 936752411
联系邮箱: zhiyun@corp.youdao.com
温馨提示:
应用ID 和 应用密钥 ,并绑定实例;如果您还没有,请按照 新手指南 获取。批量翻译API接口提供写逸的翻译服务,包含了中英翻译和小语种翻译功能。您只需要通过调用批量翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。
批量翻译API HTTPS地址:
https://openapi.youdao.com/v2/api
调用方在集成批量翻译API时,请遵循以下规则。
| 规则 | 描述 |
|---|---|
| 传输方式 | HTTPS |
| 请求方式 | GET/POST |
| 字符编码 | 统一使用UTF-8 编码 |
| 请求格式 | 表单 |
| 响应格式 | JSON |
调用API需要向接口发送以下字段来访问服务。
| 字段名 | 类型 | 含义 | 必填 | 备注 |
|---|---|---|---|---|
| q | text | 要翻译的文本.可指定多个 | True | q=苹果&q=橘子 |
| from | text | 源语言 | True | 语言列表 (可设置为auto) |
| to | text | 目标语言 | True | 语言列表 |
| appKey | text | 应用标识(应用ID) | True | 可在 应用管理 查看 |
| salt | text | 随机字符串,可使用UUID进行生产 | True | hfa12lak56ja9gjl |
| sign | text | 签名信息:sha256(appKey+q+salt+密钥) | True | xxxxx |
| ext | text | 翻译结果音频格式,支持mp3 | false | mp3 |
| voice | text | 翻译结果发音选择,0为女声,1为男声,默认为女声 | false | 0 |
| signType | text | 签名类型 | true | v1 |
| detectLevel | text | 语言检测粒度描述。影响翻译时i字段的内容合并做语言检测,还是分别进行检测;取值为0或1,取值为0时合并检测,取值为1时分别检测 | false | |
| verifyLang | text | 是否对语言方向进行二次核实。当用户不确定传入的参数是否正确时,可将该参数置为true,表示需要进行二次核实,系统将额外返回一个检测到的核实结果.默认为false | false | |
签名生成方法如下:
signType=v3;
sign=sha256(应用ID+input+salt+curtime+应用密钥);
其中,input的计算方式为:input=q前10个字符+q长度+q后10个字符(当q长度大于20)或input=q字符串(当q长度小于等于20);
注意:
不同语言获取时间戳,请参看此链接
如果对签名有疑问,可以参看各语言demo。
返回的结果是json格式,包含字段与FROM和TO的值有关,具体说明如下:
| 字段名 | 类型 | 含义 | 备注 |
|---|---|---|---|
| errorCode | text | 错误返回码 | 一定存在 |
| errorIndex | JSONArray | 错误结果的序号 | 结果部分出错时存在。序号与输入的i字段顺序一一对应,序号从0开始。JSONArray中元素为int类型 |
| translateResults | JSONArray | 翻译结果 | 批量请求中存在正确结果时,一定存在。JSONArray中元素为JSONObject类型,JSONObject中一定包含query、translation和type字段(均为String类型),分别表示翻译原句、翻译结果和翻译所用的语言方向。 |
{
"errorCode": 返回结果代码,
"errorIndex": [
1 //序号从0开始
],
"translateResults": [
{
"query": 第一个q字段中的原文句子,
"translation": 第一个i字段对应的译文句子,
"type": 第一个q字段实际翻译语言方向,
"verifyResult": 第一个q字段语言方向核实结果
},
{
"query": 第二个q字段中的原文句子,
"translation": 第二个q字段对应的译文句子,
"type": 第二个q字段实际翻译语言方向,
"verifyResult": 第一个q字段语言方向核实结果
}
...
]
}
下表为各语言对应代码:
| 语言 | 代码 |
|---|---|
| 中文 | zh-CHS |
| 中文繁体 | zh-CHT |
| 英文 | en |
| 日文 | ja |
| 韩文 | ko |
| 法文 | fr |
| 西班牙文 | es |
| 葡萄牙文 | pt |
| 意大利文 | it |
| 俄文 | ru |
| 越南文 | vi |
| 德文 | de |
| 阿拉伯文 | ar |
| 印尼文 | id |
| 南非荷兰语 | af |
| 波斯尼亚语 | bs |
| 保加利亚语 | bg |
| 粤语 | yue |
| 加泰隆语 | ca |
| 克罗地亚语 | hr |
| 捷克语 | cs |
| 丹麦语 | da |
| 荷兰语 | nl |
| 爱沙尼亚语 | et |
| 斐济语 | fj |
| 芬兰语 | fi |
| 希腊语 | el |
| 海地克里奥尔语 | ht |
| 希伯来语 | he |
| 印地语 | hi |
| 白苗语 | mww |
| 匈牙利语 | hu |
| 斯瓦希里语 | sw |
| 克林贡语 | tlh |
| 拉脱维亚语 | lv |
| 立陶宛语 | lt |
| 马来语 | ms |
| 马耳他语 | mt |
| 挪威语 | no |
| 波斯语 | fa |
| 波兰语 | pl |
| 克雷塔罗奥托米语 | otq |
| 罗马尼亚语 | ro |
| 塞尔维亚语(西里尔文) | sr-Cyrl |
| 塞尔维亚语(拉丁文) | sr-Latn |
| 斯洛伐克语 | sk |
| 斯洛文尼亚语 | sl |
| 瑞典语 | sv |
| 塔希提语 | ty |
| 泰语 | th |
| 汤加语 | to |
| 土耳其语 | tr |
| 乌克兰语 | uk |
| 乌尔都语 | ur |
| 威尔士语 | cy |
| 尤卡坦玛雅语 | yua |
| 阿尔巴尼亚语 | sq |
| 阿姆哈拉语 | am |
| 亚美尼亚语 | hy |
| 阿塞拜疆语 | az |
| 孟加拉语 | bn |
| 巴斯克语 | eu |
| 白俄罗斯语 | be |
| 宿务语 | ceb |
| 科西嘉语 | co |
| 世界语 | eo |
| 菲律宾语 | tl |
| 弗里西语 | fy |
| 加利西亚语 | gl |
| 格鲁吉亚语 | ka |
| 古吉拉特语 | gu |
| 豪萨语 | ha |
| 夏威夷语 | haw |
| 冰岛语 | is |
| 伊博语 | ig |
| 爱尔兰语 | ga |
| 爪哇语 | jw |
| 卡纳达语 | kn |
| 哈萨克语 | kk |
| 高棉语 | km |
| 库尔德语 | ku |
| 柯尔克孜语 | ky |
| 老挝语 | lo |
| 拉丁语 | la |
| 卢森堡语 | lb |
| 马其顿语 | mk |
| 马尔加什语 | mg |
| 马拉雅拉姆语 | ml |
| 毛利语 | mi |
| 马拉地语 | mr |
| 蒙古语 | mn |
| 缅甸语 | my |
| 尼泊尔语 | ne |
| 齐切瓦语 | ny |
| 普什图语 | ps |
| 旁遮普语 | pa |
| 萨摩亚语 | sm |
| 苏格兰盖尔语 | gd |
| 塞索托语 | st |
| 修纳语 | sn |
| 信德语 | sd |
| 僧伽罗语 | si |
| 索马里语 | so |
| 巽他语 | su |
| 塔吉克语 | tg |
| 泰米尔语 | ta |
| 泰卢固语 | te |
| 乌兹别克语 | uz |
| 南非科萨语 | xh |
| 意第绪语 | yi |
| 约鲁巴语 | yo |
| 南非祖鲁语 | zu |
| 自动识别 | auto |
其中auto可以识别中文、英文、日文、韩文、法文、西班牙文、葡萄牙文、俄文、越南文、德文、阿拉伯文、印尼文、意大利文,其他语种无法识别,为提高准确率,请指定语种。
| 错误码 | 含义 |
|---|---|
| 101 | 缺少必填的参数,首先确保必填参数齐全,然后确认参数书写是否正确。 |
| 102 | 不支持的语言类型 |
| 103 | 翻译文本过长 |
| 104 | 不支持的API类型 |
| 105 | 不支持的签名类型 |
| 106 | 不支持的响应类型 |
| 107 | 不支持的传输加密类型 |
| 108 | 应用ID无效,注册账号,登录后台创建应用和实例并完成绑定,可获得应用ID和应用密钥等信息 |
| 109 | batchLog格式不正确 |
| 110 | 无相关服务的有效实例,应用没有绑定服务,可以新建服务,绑定服务。注:某些服务的翻译结果发音需要tts服务,需要在控制台创建语音合成实例绑定应用后方能使用。 |
| 111 | 开发者账号无效 |
| 112 | 请求服务无效 |
| 113 | q不能为空 |
| 201 | 解密失败,可能为DES,BASE64,URLDecode的错误 |
| 202 | 签名检验失败,如果确认应用ID和应用密钥的正确性,仍返回202,一般是编码问题。请确保翻译文本 q 为UTF-8编码. |
| 203 | 访问IP地址不在可访问IP列表 |
| 205 | 请求的接口与应用的平台类型不一致,确保接入方式(Android SDK、IOS SDK、API)与创建的应用平台类型一致。如有疑问请参考入门指南 |
| 206 | 因为时间戳无效导致签名校验失败 |
| 207 | 重放请求 |
| 301 | 辞典查询失败 |
| 302 | 翻译查询失败 |
| 303 | 服务端的其它异常 |
| 304 | 会话闲置太久超时 |
| 401 | 账户已经欠费,请进行账户充值 |
| 402 | offlinesdk不可用 |
| 411 | 访问频率受限,请稍后访问 |
| 412 | 长请求过于频繁,请稍后访问 |
可参考文本翻译的示例demo。