一、背景
因为个人需要将中文翻译成英文,所以开始对翻译接口有了兴趣!于是整理下常用的五个翻译接口包括谷歌、百度、有道、必应、金山词霸,经过研究发现,难度等级也是按照如上顺序排列的。目前主流的翻译也都提供了API接口,但是作为一个开发怎么能不追求些挑战呢!
(PS:跟穷没有一点关系!)
二、第一阶层(必应、金山)
为什么说是第一阶层呢?当然是因为这两家秉持开放的观念,不禁由衷对其表示尊重!
必应翻译
必应有两个接口,一个是用来获取译文的数据,一个是用来获取翻译的数据,参数都是一致的 参数:from=zh-CHS&to=en&text=代码 参数解析:from 需要翻译文本的语言 to 翻译结果的语言 text 需要翻译的内容1.获取译文接口 接口地址:https://cn.bing.com/translator/返回数据比较多,想看的自行去实验吧2.获取翻译接口 接口:https://cn.bing.com/ttranslate返回结果:{"statusCode":200,"translationResponse":"Code"}
金山词霸
接口地址:http://fy.iciba.com/ajax.php?a=fy参数:f=auto&t=auto&w=爱 参数解析: f:需要翻译的语言 t:翻译成的语言 w:需要翻译的内容 返回结果:{status: 1, content: {from: "zh", to: "en", out: "love", vendor: "ciba", err_no: 0}}
三、第二阶层(有道)
除了第一阶级的两家的接口是直接的,其他的接口都经过加密了,接下来就是加密程度的难易的区分了
有道翻译
接口地址:http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule参数:i=爱情&from=zh-CHS&to=en&smartresult=dict&client=fanyideskweb&salt=1541752274&sign=99b25d6a0f1dc171047ddf464fa5b87e&doctype=json&version=2.1&keyfrom=fanyi.web&action=FY_BY_REALTIME&typoResult=false参数解析: i 翻译内容 salt 随机数(官方是用时间+rand生成的,自己试了下用1、2、3这样的也是可以的) sign md5加密认证(是用一些密文和salt加上i然后进行md5加密,具体的内容就不说了,都在前端代码里了)from 需要翻译文本的语言 to 翻译成的语言 注意点:1.其他参数都是固定的,可以直接忽视2.需要带上cookie内容:"Cookie:OUTFOX_SEARCH_USER_ID=-72747@1.8.1.1;"返回结果:{"translateResult":[[{"tgt":"love","src":"爱情"}]],"errorCode":0,"type":"zh-CHS2en","smartResult":{"entries":["","love\r\n","affection\r\n","amor\r\n"],"type":1}}
四、第三阶层(谷歌、百度)
这两家接口用到生成随机数的前端代码比较繁琐,试图搞出来但是发现比较有难度,代码截图如下,随意感受下吧
百度代码.png
百度的翻译接口和谷歌的看上去比较相似,主要难点都是在与获取随机数
虽然没有继续研究下去,但是在网上有关这两家接口的文章有很多,挑选了写的比较好的,有兴趣的小伙伴可以再深入研究!
五、后记
当然如果不差钱的小伙伴还是建议去直接申请各大翻译平台的API的接口,又稳定又不折腾。支持正版!
这个主要还是个人想研究下,如果造成什么不良影响,请及时跟我沟通下吧。(不过应该没啥影响的)
作者:caohaoyu
链接:https://www.jianshu.com/p/0d37c38454bd
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦