2019-03-15 11:28:40 1680浏览
本篇文章扣丁学堂Python培训小编给大家分享一下Python调用有道api接口的方法有哪些,喜欢Python开发技术或者是想要加入Python开发领域的小伙伴如果感兴趣的话就随小编一起来学习一下吧。
注:本篇文章代码供初学者学习交流(申请很简单的ps:审核不用花时间的,请勿滥用。)
#-*- coding: UTF-8 -*- import urllib import urllib2 import requests import json import sys reload(sys) sys.setdefaultencoding("utf-8") #print(sys.getdefaultencoding()) def youdao(text,c=1): #c 1 翻译 2查词 #textx=text.decode('gbk').encode('utf-8') #将gbk编码转utf-8 编码 有道api要求传入 utf-8 编码 from urllib import quote #t=quote(textx) t=quote(text) url="接口" #这个链接自己申请哈 r = requests.get(url) if r.status_code==200: res=json.loads(r.text,encoding='utf-8') errorCode=res['errorCode'] title='『小风翻译』\n\n' yd='\n数据来源 有道' #这句必须有,对有道提供免费的api接口表示感谢。 if errorCode==0: query=res['query'] #分析翻译 translation=res['translation'] trans=u'原文:%s\n翻译:%s' % (query,translation[0]) trans_s=trans#.encode('GB18030') basic_s='' if 'basic' in res: #分析有基础释义部分 phonetic=res['basic']['phonetic'] explains=res['basic']['explains'] phone_s=u'%s %s\n---基本释义---\n' % (query,phonetic) for x in explains: basic_s=basic_s+x+'\n' basic_s=phone_s+basic_s #基本释义 web_s=' ' if 'web' in res: web_s='---网络释义---\n' web=res['web'] for x in web: web_k=x['key'] web_v=x['value'] value='' for v in web_v: value=value+v+'; ' web_s=web_s+'√ '+web_k+'\n释义:'+value+'\n' if c==1: send=title+trans_s+'\n\n'+web_s+yd return send#.encode('GB18030') else: send=title+basic_s+'\n'+web_s+yd return send#.encode('GB18030') elif errorCode==20: return '亲,输入的字数过长了,小风做不到啊ヽ(≧□≦)ノ' elif errorCode==30: return 'What? 翻译失败了,再试一次吧(⊙o⊙)' else : return '服务器异常,错误%i,请联系QQ1849059316' % errorCode else : return '访问出错!请联系QQ1849059316' print youdao('include')
注意:requests 库必须先安装
想要了解更多关于Python方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Python开发环境搭建视频,Python培训后的前景无限,行业薪资和未来的发展会越来越好的,扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。
【关注微信公众号获取更多学习资料】