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发腾讯微博代码分享
Jan 10 Python
Python多线程编程(三):threading.Thread类的重要函数和方法
Apr 05 Python
用Python创建声明性迷你语言的教程
Apr 13 Python
Python三级目录展示的实现方法
Sep 28 Python
Python实现简单的四则运算计算器
Nov 02 Python
Python3 Random模块代码详解
Dec 04 Python
如何在python中使用selenium的示例
Dec 26 Python
实例讲解Python爬取网页数据
Jul 08 Python
python实现彩票系统
Jun 28 Python
Python代码执行时间测量模块timeit用法解析
Jul 01 Python
python 实现图片修复(可用于去水印)
Nov 19 Python
忆童年!用Python实现愤怒的小鸟游戏
Jun 07 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 地区分类排序算法
2013/07/01 PHP
必须收藏的23个php实用代码片段
2016/02/02 PHP
jQuery 类twitter的文本字数限制带提示效果插件
2010/04/16 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
jquery实现无限分级横向导航菜单的方法
2015/03/12 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
AngularJS学习笔记之ng-options指令
2015/06/16 Javascript
非常实用的js验证框架实现源码 附原理方法
2016/06/08 Javascript
js将字符串中的每一个单词的首字母变为大写其余均为小写
2017/01/05 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
67 个节约开发时间的前端开发者的工具、库和资源
2017/09/12 Javascript
详解微信小程序Page中data数据操作和函数调用
2017/09/27 Javascript
angular4自定义组件详解
2017/09/28 Javascript
Vue.js 时间转换代码及时间戳转时间字符串
2018/10/16 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
vue全局自定义指令-元素拖拽的实现代码
2019/04/14 Javascript
jquery实现的放大镜效果示例
2020/02/24 jQuery
24个ES6方法解决JS实际开发问题(小结)
2020/05/31 Javascript
详解Django框架中用context来解析模板的方法
2015/07/20 Python
Python使用PDFMiner解析PDF代码实例
2017/03/27 Python
Python迭代器和生成器定义与用法示例
2018/02/10 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
python2.7使用plotly绘制本地散点图和折线图
2019/04/02 Python
基于python实现模拟数据结构模型
2020/06/12 Python
留学自荐信
2013/10/10 职场文书
中药专业大学生医药工作求职信
2013/10/25 职场文书
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
会展策划与管理专业大学生职业生涯规划
2014/02/07 职场文书
三分钟自我介绍演讲稿
2014/08/21 职场文书
校园主题婚礼活动策划方案
2014/09/15 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
出纳岗位职责
2015/01/31 职场文书
研究生毕业登记表的自我鉴定范文
2019/07/15 职场文书
Golang MatrixOne使用介绍和汇编语法
2022/04/19 Golang
Nginx使用ngx_http_upstream_module实现负载均衡功能示例
2022/08/05 Servers