python利用有道翻译实现"语言翻译器"的功能实例


Posted in Python onNovember 14, 2017

实例如下:

import urllib.request
import urllib.parse
import json

while True:
  content = input('请输入需要翻译的内容(退出输入Q):')
  if content == 'Q':
    break
  else:
    url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=http://www.youdao.com/'
    data = {}

    data['type'] = 'AUTO'
    data['i'] = content
    data['doctype'] = 'json'
    data['xmlVersion'] = '1.8'
    data['keyfrom'] = 'fanyi.web'
    data['ue'] = 'UTF-8'
    data['action'] = 'FY_BY_CLICKBUTTON'
    data['typoResult'] = 'true'

    data = urllib.parse.urlencode(data).encode('utf-8')
    response = urllib.request.urlopen(url, data)
    html = response.read().decode('utf-8')
    target = json.loads(html)
    print('翻译的结果:%s' % target['translateResult'][0][0]['tgt'])

程序执行情况:

python利用有道翻译实现"语言翻译器"的功能实例

这里要注意的是两个函数urllib.request.urlopen()与urllib.parse.urlencode()。

urllib.request.urlopen()其实不止一个参数,有好几个哦,其中第二个是data,data应该是一个buffer的标准应用程序/ x-www-form-urlencoded格式(python标准库原文:data should be a buffer in the standard application/x-www-form-urlencoded format)。urllib.parse.urlencode()函数接受一个映射或序列集合,并返回一个字符串的格式(python标准库原文:The urllib.parse.urlencode() function takes a mapping or sequence of 2-tuples and returns a string in this format)。我们可以看看urllib.parse.urlencode()的结果是什么样的:

python利用有道翻译实现"语言翻译器"的功能实例

上图的结果刚好与urllib.request.urlopen()的data参数的数据类型要求一致了。

注意,上面urlopen当中的url,这个是分析有道翻译页面的真实的Request URL:

python利用有道翻译实现"语言翻译器"的功能实例

python利用有道翻译实现"语言翻译器"的功能实例

以上这篇python利用有道翻译实现"语言翻译器"的功能实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python素数检测的方法
May 11 Python
Python中的命令行参数解析工具之docopt详解
Mar 27 Python
Python2随机数列生成器简单实例
Sep 04 Python
python用户管理系统的实例讲解
Dec 23 Python
Python微信公众号开发平台
Jan 25 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
python3调用百度翻译API实现实时翻译
Aug 16 Python
Pycharm2017版本设置启动时默认自动打开项目的方法
Oct 29 Python
Python3字符串encode与decode的讲解
Apr 02 Python
Golang GBK转UTF-8的例子
Aug 26 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
Jan 30 Python
tensorboard 可视化之localhost:6006不显示的解决方案
May 22 Python
TensorFlow在MAC环境下的安装及环境搭建
Nov 14 #Python
python中文分词,使用结巴分词对python进行分词(实例讲解)
Nov 14 #Python
Python中import机制详解
Nov 14 #Python
AI人工智能 Python实现人机对话
Nov 13 #Python
Python编程实现蚁群算法详解
Nov 13 #Python
Python编程实现粒子群算法(PSO)详解
Nov 13 #Python
人工智能最火编程语言 Python大战Java!
Nov 13 #Python
You might like
PHP 和 COM
2006/10/09 PHP
PHP sleep()函数, usleep()函数
2016/08/25 PHP
如何快速的呈现我们的网页的技巧整理
2007/07/01 Javascript
基于jquery的划词搜索实现(备忘)
2010/09/14 Javascript
JS在textarea光标处插入文本的小例子
2013/03/22 Javascript
Jquery动态进行图片缩略的原理及实现
2013/08/13 Javascript
父节点获取子节点的字符串示例代码
2014/02/26 Javascript
JavaScript中window.showModalDialog()用法详解
2014/12/18 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
最简单的JavaScript图片轮播代码(两种方法)
2015/12/18 Javascript
JS实现给json数组动态赋值的方法示例
2020/03/19 Javascript
Vue.js框架路由使用方法实例详解
2017/08/25 Javascript
js 概率计算(简单版)
2017/09/12 Javascript
基于Vue的移动端图片裁剪组件功能
2017/11/28 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
Angularjs Promise实例详解
2018/03/15 Javascript
jquery实现鼠标悬浮弹出气泡提示框
2020/12/23 jQuery
[05:06]2017亚洲邀请赛DAC回顾片
2017/04/19 DOTA
总结python实现父类调用两种方法的不同
2017/01/15 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
儿童学习python的一些小技巧
2018/05/27 Python
Django中使用Whoosh进行全文检索的方法
2019/03/31 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Django模板Templates使用方法详解
2019/07/19 Python
利用python3 的pygame模块实现塔防游戏
2019/12/30 Python
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
Volcom法国官网:美国冲浪滑板品牌
2017/05/25 全球购物
英国领先的运动营养品牌:Protein Dynamix
2018/01/02 全球购物
欧尚俄罗斯网上超市:Auchan俄罗斯
2018/05/03 全球购物
澳大利亚女装精品店:Alannah Hill
2020/07/29 全球购物
喝酒检查书范文
2014/02/23 职场文书
买卖车协议书
2014/04/21 职场文书
信息管理与信息系统专业求职信
2014/06/21 职场文书
2014年重阳节老干部座谈会局领导发言稿
2014/09/25 职场文书
元旦主持词开场白
2015/05/29 职场文书
python编写五子棋游戏
2021/05/25 Python