这篇文章主要讲解了“Python怎么利用有道翻译开发API”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python怎么利用有道翻译开发API”吧!
Python源码是关于Python利用有道翻译开发API应用示例。这是一个很有意思又简单的API应用练习题,方法中用到了有道词典开放API应用,合成的类似于命令行词典应用Python小程序。功能简单,但效果却很好。
这里要注意的是:有道API的请求频率限制,限制频率为每小时1000次,如果超过限制会被封禁。
提示:如果想一直用这个可以自己申请一个KEY,申请的过程非常简单的,只要替换原有的KEY_FROM和KEY就可以了。
Python利用有道翻译开发API应用示例,源码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#www.iplaypy.com
import urllib2
import urllib
import simplejson as json
import sys
class YoudaoDic():
"""
有道词典API
"""
VERSION = 1.1
URL = 'http://fanyi.youdao.com/openapi.do'
KEY_FROM = 'Dic-EVE'
KEY = '975360059'
TYPE = 'data'
# 可选值xml, json
DOC_TYPE = 'json'
def translate(self, text):
"""
翻译方法,传入要翻译的文本,返回结果字典
"""
# 参数
params = {'keyfrom': self.KEY_FROM, 'key': self.KEY, 'type': self.TYPE, 'doctype': self.DOC_TYPE, 'version': self.VERSION ,'q': text}
request = urllib2.urlopen(self.URL, urllib.urlencode(params))
data = request.read()
return json.loads(data)
def format_for_command(self, text):
"""
为命令行格式化翻译结果
"""
data = main(text)
# TODO:格式化字符串
if data:
print '有道翻译:'
print '\t原文本:', data.get('query', text)
translation = data.get('translation', None)
if translation:
for t in translation:
print '\t翻 译:', t
else:
'未找到该词'
def main(text):
if text and text.strip() != '':
return YoudaoDic().translate(text)
if __name__ == '__main__':
if sys.argv and len(sys.argv) >= 2:
l = sys.argv[1:]
YoudaoDic().format_for_command(' '.join(l))
else:
print '有道翻译: \n\t提示:请输入您要翻译的词或句子'
感谢各位的阅读,以上就是“Python怎么利用有道翻译开发API”的内容了,经过本文的学习后,相信大家对Python怎么利用有道翻译开发API这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:http://blog.itpub.net/69913713/viewspace-2649418/