微信公众平台开发(六) 翻译功能开发.doc
文本预览下载声明
微信公众平台开发(六) 翻译功能开发
[导读] 一、简介上一篇文章介绍了微信公众平台天气预报功能的开发,实现了微信公众平台的第一个实际应用,在接下来的这一篇文章中,我们将对微信翻译功能进行简单开发,以供读者参考。二、思路分析和上一篇查询天气的思
一、简介
上一篇文章介绍了微信公众平台天气预报功能的开发,实现了微信公众平台的第一个实际应用,在接下来的这一篇文章中,我们将对微信翻译功能进行简单开发,以供读者参考。
二、思路分析
和上一篇查询天气的思路差不多,首先要对用户发送过来的消息进行判断,判断消息里是否含有“翻译”关键字,如果含有,则提取待翻译内容,然后调用网络上开放的翻译API 进行相关翻译。
三、翻译API 分析
网络上有很多翻译API,大家可以根据自己的需求进行选择。这里我们选择应用比较广泛的,翻译功能还比较不错的有道翻译API 和百度翻译API,下面对这两种API的相关信息进行分析。
3.1 有道翻译API
3.1.1 API 地址:/openapi
注意:有道提供的API 接口,在下面的测试时,json 数据格式返回不正确,到网上查阅资料,可以正确翻译的地址为 /fanyiapi,这点注意。
3.1.2 申请key
按照要求填写相关信息,这些信息,下面会使用到,所以请认真如实填写。
申请完之后,会在下方生成API key 和keyfrom,使用API 时会用到。
3.1.3 API 使用范例
3.1.4 数据格式
a. xml 格式
/openapi.do?keyfrom=orchidkey=1008797533type=datadoctype=xmlversion=1.1q=这里是有道翻译API
view sourceprint?
01.
?xml version=1.0 encoding=UTF-8?
02.
youdao-fanyi
03.
errorCode0/errorCode
04.
!-- 有道翻译 --
05.
query![CDATA[这里是有道翻译API]]/query
06.
translation
07.
paragraph![CDATA[Here is the youdao translation API]]/paragraph
08.
/translation
09.
/youdao-fanyi
b. json 格式
/openapi.do?keyfrom=orchidkey=1008797533type=datadoctype=jsonversion=1.1q=翻译
view sourceprint?
01.
{
02.
errorCode:0
03.
query:翻译,
04.
translation:[translation], // 有道翻译
05.
basic:{ // 有道词典-基本词典
06.
phonetic:fān yì,
07.
explains:[
08.
translate,
09.
interpret
10.
]
11.
},
12.
web:[ // 有道词典-网络释义
13.
{
14.
key:翻译,
15.
value:[translator,translation,translate,Interpreter]
16.
},
17.
{...}
18.
]
19.
}
3.2 百度翻译API
3.2.1 API 地址:/public/2.0/bmt/translate
3.2.2 获取api key
开发者在百度连接平台上注册得到的授权API key,详细请参阅:/wiki/index.php?title=%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/%E7%BD%91%E7%AB%99%E6%8E%A5%E5%85%A5/%E5%85%A5%E9%97%A8%E6%8C%87%E5%8D%97
3.2.3 API 使用范例
3.2.4 数据格式
百度翻译API 响应的数据格式为UTF-8编码的PHP数组对应的标准JSON字符串。
view sourceprint?
1.
{
2.
“from”:”zh”,
3.
“to”:”en”,
4.
“trans_result”:[]
5.
}
trans_result 为一个数组,其中每一个{}就是一个段落,结构如下所示:
view sourceprint?
1.
trans_result: [
2.
{},
3.
{},
4.
{}
5.
]
段落结果说明:
经json_decode 后的形式:
view sourceprint?
01.
{
02.
from: en,
03.
to: zh,
04.
trans_resul
显示全部