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 相关文章推荐
在GitHub Pages上使用Pelican搭建博客的教程
Apr 25 Python
详解Python发送邮件实例
Jan 10 Python
Python实现从log日志中提取ip的方法【正则提取】
Mar 31 Python
pandas修改DataFrame列名的方法
Apr 08 Python
Flask入门之上传文件到服务器的方法示例
Jul 18 Python
python+opencv实现高斯平滑滤波
Jul 21 Python
Python编程中类与类的关系详解
Aug 08 Python
Django模板语言 Tags使用详解
Sep 09 Python
python 函数的缺省参数使用注意事项分析
Sep 17 Python
django2.2安装错误最全的解决方案(小结)
Sep 24 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
Jun 08 Python
Python文件操作模拟用户登陆代码实例
Jun 09 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 安全过滤函数代码
2011/05/07 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
php使用百度天气接口示例
2014/04/22 PHP
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
2020/06/03 PHP
JS BASE64编码 window.atob(), window.btoa()
2021/03/09 Javascript
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
基于jquery tab切换(防止页面刷新)
2012/05/23 Javascript
JQuery实现表格动态增加行并对新行添加事件
2014/07/30 Javascript
深入理解javascript变量声明
2014/11/20 Javascript
原生javascript实现图片按钮切换
2015/01/12 Javascript
详解JavaScript基于面向对象之继承实例
2015/12/16 Javascript
基于HTML+CSS,jQuery编写的简易计算器后续(添加了键盘监听)
2016/01/05 Javascript
详解自动生成博客目录案例
2016/12/09 Javascript
node.js调用C++函数的方法示例
2018/09/21 Javascript
Javascript实现秒表倒计时功能
2018/11/17 Javascript
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
在vant中使用时间选择器和popup弹出层的操作
2020/11/04 Javascript
python通过yield实现数组全排列的方法
2015/03/18 Python
Python随机生成信用卡卡号的实现方法
2015/05/14 Python
python批量查询、汉字去重处理CSV文件
2018/05/31 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
python读写Excel表格的实例代码(简单实用)
2019/12/19 Python
Python换行与不换行的输出实例
2020/02/19 Python
Numpy中ndim、shape、dtype、astype的用法详解
2020/06/14 Python
商场端午节活动方案
2014/01/29 职场文书
法人委托书范本
2014/04/04 职场文书
项目战略合作意向书
2015/05/08 职场文书
追悼会答谢词范文
2015/09/29 职场文书
学习经验交流会总结
2015/11/02 职场文书
2016年感恩父亲节活动总结
2016/04/01 职场文书
2019年汽车租赁合同范本!
2019/08/12 职场文书
国际最新研究在陨石中发现DNA主要成分 或由陨石带来地球
2022/04/29 数码科技
js 实现验证码输入框示例详解
2022/09/23 Javascript