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访问纯真IP数据库的代码
May 19 Python
解决python写的windows服务不能启动的问题
Apr 15 Python
Python中if __name__ == '__main__'作用解析
Jun 29 Python
Python搭建HTTP服务器和FTP服务器
Mar 09 Python
Python实现字符串逆序输出功能示例
Jun 24 Python
python下载图片实现方法(超简单)
Jul 21 Python
Python3之字节串bytes与字节数组bytearray的使用详解
Aug 27 Python
Python统计文本词汇出现次数的实例代码
Feb 27 Python
Python devel安装失败问题解决方案
Jun 09 Python
关于tf.matmul() 和tf.multiply() 的区别说明
Jun 18 Python
Python四款GUI图形界面库介绍
Jun 05 Python
Python爬取奶茶店数据分析哪家最好喝以及性价比
Sep 23 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标准库 (SPL)――Countable用法示例
2020/06/05 PHP
jQuery trigger()方法用法介绍
2015/01/13 Javascript
javascript使用shift+click实现选择和反选checkbox的方法
2015/05/04 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
2016/03/05 Javascript
基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用
2016/05/12 Javascript
AngularJs directive详解及示例代码
2016/09/01 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
JS实现unicode和UTF-8之间的互相转换互转
2017/07/05 Javascript
JavaScript之事件委托实例(附原生js和jQuery代码)
2017/07/22 jQuery
用JS编写一个函数,返回数组中重复出现过的元素(实例)
2017/09/14 Javascript
json2.js 入门教程之使用方法与实例分析
2017/09/14 Javascript
简单理解Vue中的nextTick方法
2018/01/30 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
解决vue.js 数据渲染成功仍报错的问题
2018/08/25 Javascript
react 父子组件之间通讯props
2018/09/08 Javascript
jquery 插件重新绑定的处理方法分析
2019/11/23 jQuery
Python实现控制台进度条功能
2016/01/04 Python
Python过滤txt文件内重复内容的方法
2018/10/21 Python
python分数表示方式和写法
2019/06/26 Python
使用Python给头像戴上圣诞帽的图像操作过程解析
2019/09/20 Python
HTML5手指下滑弹出负一屏阻止移动端浏览器内置下拉刷新功能的实现代码
2020/04/10 HTML / CSS
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
Born鞋子官网:Born Shoes
2017/04/06 全球购物
澳大利亚冒险体验:Adrenaline(跳伞、V8赛车、热气球等)
2017/09/18 全球购物
年终总结会议主持词
2014/03/17 职场文书
租房协议书
2014/04/10 职场文书
仓库管理计划书
2014/05/04 职场文书
领导干部个人整改措施落实情况汇报
2014/10/29 职场文书
三峡人家导游词
2015/01/31 职场文书
小学运动会宣传稿
2015/07/23 职场文书
2019通用版新员工入职培训方案!
2019/07/11 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书
导游词之峨眉山
2019/12/16 职场文书
Java Spring Boot 正确读取配置文件中的属性的值
2022/04/20 Java/Android