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的身份证号码自动生成程序
Aug 15 Python
python实现对一个完整url进行分割的方法
Apr 29 Python
基于DataFrame筛选数据与loc的用法详解
May 18 Python
numpy.std() 计算矩阵标准差的方法
Jul 11 Python
Pandas读取MySQL数据到DataFrame的方法
Jul 25 Python
python算法与数据结构之冒泡排序实例详解
Jun 22 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
Jun 28 Python
安装docker-compose的两种最简方法
Jul 30 Python
Python timeit模块的使用实践
Jan 13 Python
Django的ListView超详细用法(含分页paginate)
May 21 Python
解决Keras使用GPU资源耗尽的问题
Jun 22 Python
如何利用Python matplotlib绘制雷达图
Dec 21 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
DC游戏Steam周三特惠 《蝙蝠侠》阿卡姆系列平史低
2020/04/09 欧美动漫
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
JQuery页面的表格数据的增加与分页的实现
2013/12/10 Javascript
jquery数组之存放checkbox全选值示例代码
2013/12/20 Javascript
深入理解javascript的执行顺序
2014/04/04 Javascript
用js设置下拉框为只读的小技巧
2014/04/10 Javascript
JS实现判断碰撞的方法
2015/02/11 Javascript
JQuery中层次选择器用法实例详解
2015/05/18 Javascript
JavaScript 程序错误Cannot use 'in' operator to search的解决方法
2017/07/10 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
2018/07/24 Javascript
Python使用pyodbc访问数据库操作方法详解
2018/07/05 Python
python实现键盘控制鼠标移动
2020/11/27 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
2018/12/11 Python
python使用response.read()接收json数据的实例
2018/12/19 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
Python两台电脑实现TCP通信的方法示例
2019/05/06 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
python异常触发及自定义异常类解析
2019/08/06 Python
使用python 的matplotlib 画轨道实例
2020/01/19 Python
Python SMTP发送电子邮件的示例
2020/09/23 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
html5 移动端视频video的android兼容(去除播放控件、全屏)
2020/03/26 HTML / CSS
法国票务网站:Ticketmaster法国
2018/07/09 全球购物
简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?
2016/11/20 面试题
学院领导推荐信
2013/10/30 职场文书
教师自我评价范文
2013/12/16 职场文书
2014年迎新年活动方案
2014/02/19 职场文书
升学宴主持词
2014/04/02 职场文书
房产买卖委托公证书
2014/04/04 职场文书
学校党的群众路线教育实践活动整改措施
2014/10/25 职场文书
爱晚亭导游词
2015/02/09 职场文书
地震慰问信
2015/02/14 职场文书
2016年幼儿园教师政治学习心得体会
2016/01/23 职场文书