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中的type()方法的使用
May 21 Python
在Django的上下文中设置变量的方法
Jul 20 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
Oct 18 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
import的本质解析
Oct 30 Python
Python算法之图的遍历
Nov 16 Python
基于数据归一化以及Python实现方式
Jul 11 Python
python super的使用方法及实例详解
Sep 25 Python
wxPython实现文本框基础组件
Nov 18 Python
python 多维高斯分布数据生成方式
Dec 09 Python
基于Python3读写INI配置文件过程解析
Jul 23 Python
Python爬虫基础之初次使用scrapy爬虫实例
Jun 26 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
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
2017/08/01 PHP
一个tab标签切换效果代码
2009/03/27 Javascript
获取URL地址中的文件名和参数的javascript代码
2009/09/02 Javascript
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
js实现的切换面板实例代码
2013/06/17 Javascript
javascript中取前n天日期的两种方法分享
2014/01/26 Javascript
js获取客户端网卡的IP地址、MAC地址
2014/03/26 Javascript
学习JavaScript设计模式之单例模式
2016/01/19 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
遍历js中对象的属性和值的实例
2016/11/21 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
Vue $emit $refs子父组件间方法的调用实例
2018/09/12 Javascript
微信小程序仿今日头条导航栏滚动解析
2019/08/20 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
vue项目在webpack2实现移动端字体自适配功能
2020/06/02 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
小程序自定义弹框效果
2020/11/16 Javascript
关于angular 8.1使用过程中的一些记录
2020/11/25 Javascript
[51:36]EG vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python实现的简单猜数字游戏
2015/04/04 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
2017/12/19 Python
Python从零开始创建区块链
2018/03/06 Python
Flask框架模板继承实现方法分析
2019/07/31 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
python库skimage给灰度图像染色的方法示例
2020/04/27 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
2020/11/13 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
2020/12/16 Python
python基于opencv 实现图像时钟
2021/01/04 Python
女性时尚在线:IVRose
2019/02/23 全球购物
贝尔帐篷精品店:Bell Tent Boutique
2019/06/12 全球购物
全球烹饪课程的领先预订平台:Cookly
2020/01/28 全球购物
《列夫托尔斯泰》教学反思
2014/02/10 职场文书
骨干教师培训方案
2014/05/06 职场文书
2015年党务公开工作总结
2015/05/19 职场文书
选择比努力更重要?这是长期以来对“努力”的最大误解
2019/07/12 职场文书
Python可视化学习之matplotlib内置单颜色
2022/02/24 Python