利用有道翻译Api实现英文翻译功能
有道翻译提供了翻译和查词的数据接口。通过数据接口,您可以获得一段文本的翻译结果或者查词结果。 通过调用有道翻译API数据接口,您可以在您的网站或应用中更灵活地定制翻译和查词功能。 第一步:申请接口api 到有道开放平台http://fanyi.youdao.com/openapi?path=data-mode申请api 注意事项:
申请成功会得到一组api信息,比如我的信息如下:
- 创建时间:2017-05-10
- 网站名称:wangtuizhijia
- 网站地址:http://www.wangtuizhijia.com
使用有道翻译接口很简单,他们的数据是通过get方式提交的,所以我们只要把信息拼接对就可以,下面是用php实现的翻译,也配备了参数说明:
<?php /* * 请求方式:get,编码方式:utf-8 主要功能:中英互译,同时获得有道翻译结果和有道词典结果(可能没有) 参数说明: type – 返回结果的类型,固定为data doctype – 返回结果的数据格式,xml或json或jsonp version – 版本,当前最新版本为1.1 q – 要翻译的文本,必须是UTF-8编码,字符长度不能超过200个字符,需要进行urlencode编码 only – 可选参数,dict表示只获取词典数据,translate表示只获取翻译数据,默认为都获取 注: 词典结果只支持中英互译,翻译结果支持英日韩法俄西到中文的翻译以及中文到英语的翻译 errorCode: 0 – 正常 20 – 要翻译的文本过长 30 – 无法进行有效的翻译 40 – 不支持的语言类型 50 – 无效的key 60 – 无词典结果,仅在获取词典结果生效 * * */ class Youdao { public $keyfrom; public $key; public $doctype; /*自动配置参数 * */ function __construct() { $this->keyfrom = ‘wangtuizhijia’; $this->key = ‘1048394636’; $this->doctype = ‘json’; } /* * 翻译并返回结果 * $content是需要翻译的文字 * */ public function translate($content) { $youdao_api_url = ‘http://fanyi.youdao.com/openapi.do?keyfrom=’ . $this->keyfrom . ‘&key=’ . $this->key . ‘&type=data&doctype=’ . $this->doctype . ‘&version=1.1&q=’ . $content; return json_decode(file_get_contents($youdao_api_url)); } } //设置需要翻译的文字 $content=’hello’; //实例化翻译类 $Youdao = new Youdao(); $translated_data = $Youdao->translate($content); //有道翻译结果,是个数组 $translation_arr = $translated_data->translation; //有道词典-基本词典,一个对象 $basic_obj = $translated_data->basic; //发音 $phonetic = $basic->phonetic; //解释,是一个数组,因为有很多种意思 $explains_arr = $basic->explains; // 有道词典-网络释义,是个数组,数组里面包含对象 $web_arr= $translated_data->web; ?>
注意事项:
使用API key 时,请求频率限制为每小时1000次,超过限制会被封禁。
如果您的应用确实需要超过每小时1000次请求,可以通过translate-service@corp.youdao.com这个邮箱和有道联系。
本人博客地址:利用有道翻译Api实现英文翻译功能
利用有道翻译Api实现英文翻译功能的更多相关文章
- C++中使用Curl和JsonCpp调用有道翻译API实现在线翻译
使用C++开发一个在线翻译工具,这个想法在我大脑中过了好几遍了,所以就搜了下资料,得知网络上有很多翻译API,这里我选择我平时使用较多的有道翻译API进行在线翻译工具开发的练习.翻译API返回的结果常 ...
- 利用百度翻译API,获取翻译结果
利用百度翻译API,获取翻译结果 translate.py #!/usr/bin/python #-*- coding:utf-8 -*- import sys reload(sys) sys.set ...
- C++调用有道翻译API实现在线翻译之发声篇
大概半月前写了一篇博文:C++中使用Curl和JsonCpp调用有道翻译API实现在线翻译, 得到大家的热情捧场,有人看了文章说要是能发声不是更好,我觉得说的也是哈,能听到专家的标准发音,那该是多美的 ...
- 基于百度通用翻译API的一个翻译小工具
前几天写了一个简单的翻译小工具,是基于有道翻译的,不过那个翻译接口有访问限制,超过一定次数后会提示访问过于频繁,偶然发现百度翻译API如果月翻译字符少于200万是不收取费用的,所以就注册了一个百度开发 ...
- 原生js简单调用百度翻译API实现的翻译工具
先来个在线demo: js翻译工具 或者百度搜索js简单调用百度翻译API工具(不过有个小小的界面显示bug,我想细心的人应该会发现) 或者直接前往该网址:js翻译工具 或者前往我的github:gi ...
- Android笔记(五十三) 利用有道OPENAPI做简单的翻译demo
先去 http://fanyi.youdao.com/openapi?path=data-mode 申请开发者key 有道api会自动将申请的单词翻译并返回为xml或者json格式,我们所需要做的就是 ...
- 免费翻译API破解(简易翻译工具)
思路:选取有道翻译,用fiddler抓取接口请求信息,提取相关请求参数,破解加密部分. 主要请求数据: i :翻译文本 ts:时间戳 salt:ts +随机数 sign:加密信息,经过抓取信息,发现 ...
- 基于百度翻译API开发属于自己的翻译工具
你是否每天使用着网页翻译工具?你是否遇到过这种情况,上网过程中遇到一个很长的单词但是又不能复制,要开两个浏览器,一个打开百度翻译,照着另一个网页输入单词?你安装了各种翻译软件后,又删除,只因忍受不了那 ...
- 小白学Python——用 百度翻译API 实现 翻译功能
本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台: http://api.fanyi.baidu.co ...
随机推荐
- C++之图片旋转90,再保存
下面测试代码只需要全部放在一个.cpp文件里就行 //#include "stdafx.h"#include <stdio.h>#include <string& ...
- ultraedit 查看文件
转自:https://wenda.so.com/q/1481655902726192 1 UltraEdit在打开文件的时候,会对文件类型进行检查.如果是二进制文件,会自动转为16进制显示模式.如下图 ...
- java内存解析
ass BirthDate{ private int day; private int month; private int year; public BirthDate(int d;int m,in ...
- spring数据源、数据库连接池
什么是数据源.数据库连接池? DataSource通常被称为数据源,它包含连接池和连接池管理两个部分,习惯上也经常把DataSource称为连接池. 数据库连接池的基本思想:为数据库连接建立一个“缓冲 ...
- 组播的介绍以及CS模型实现
1.组播介绍 组播组可以是永久的也可以是临时的.组播组地址中,有一部分由官方分配的,称为永久组播组. 永久组播组保持不变的是它的ip地址,组中的成员构成可以发生变化.永久组播组中成员的数量都可以是任意 ...
- (转)C#调用C函数(DLL)传递参数问题
备忘: 1.C函数参数为字符串char*.如果是入参,对应C#中string或StringBuilder:如果是出参对应C#中StringBuider: 2.C函数参数为结构体指针,需在C#中对应定义 ...
- C#生成PDF2019
因接口生成Pdf推送, 工作需要进行Pdf生成,但网上生成Pdf的文档好少: 1.生成Pdf需要文件路径/内容 都可以配置 2.使用组件 itextsharp.dll 本人用版本:v2.0.5072 ...
- SVN错误:Failed to load JavaHL Library
环境:jdk1.7(64bit),eclipse4.4(64bit),SVN1.10.3 问题:在利用subclipse同步资源时,报出错误提示 Failed to load JavaHL Libra ...
- svn的分支
svn的分支使用 新建一个项目的时候,选择建立自带trunk,branches和tags文件夹的. 其中trunk作为主开发. 有需要的时候,从trunk创建分支到对应的branches下面,新建分支 ...
- layer弹出层的关闭及父页面的刷新问题
当在主页面执行添加或修改时,用弹出层是比较好的选择,如何关闭弹出层并对父级页面进行操作呢 首先在父级页面中打开一个添加页面(弹出层) 在添加页面的表单提交函数中添加如下代码: function for ...