python利用有道翻译实现"语言翻译器"的功能实例

转载  更新时间:2017年11月14日 09:15:54   作者:翌逍   我要评论

小编就为大家分享一篇python利用有道翻译实现"语言翻译器"的功能实例。具有比较好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

实例如下:

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'])

程序执行情况:

这里要注意的是两个函数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()的结果是什么样的:

上图的结果刚好与urllib.request.urlopen()的data参数的数据类型要求一致了。

注意,上面urlopen当中的url,这个是分析有道翻译页面的真实的Request URL:

以上这篇python利用有道翻译实现"语言翻译器"的功能实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python创建列表和向列表添加元素的实现方法

    python创建列表和向列表添加元素的实现方法

    下面小编就为大家分享一篇python创建列表和向列表添加元素的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 在Python的Django框架中实现Hacker News的一些功能

    在Python的Django框架中实现Hacker News的一些功能

    这篇文章主要介绍了在Python的Django框架中实现Hacker News的一些功能,包括投票“顶”评论等功能,需要的朋友可以参考下
    2015-04-04
  • 深入浅析python定时杀进程

    深入浅析python定时杀进程

    这篇文章主要介绍了深入浅析python定时杀进程的相关资料,需要的朋友可以参考下
    2016-06-06
  • python 读入多行数据的实例

    python 读入多行数据的实例

    下面小编就为大家分享一篇python 读入多行数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 利用python爬取散文网的文章实例教程

    利用python爬取散文网的文章实例教程

    这篇文章主要跟大家介绍了利用python爬取散文网文章的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • Python通过future处理并发问题

    Python通过future处理并发问题

    这篇文章主要介绍了Python通过future处理并发问题,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-10-10
  • Python的Twisted框架上手前所必须了解的异步编程思想

    Python的Twisted框架上手前所必须了解的异步编程思想

    Twisted是Python世界中人气最高的framework之一,异步的工作模式使其名扬天下,这里为大家总结了Python的Twisted框架上手前所必须了解的异步编程思想,需要的朋友可以参考下
    2016-05-05
  • Python中的日期时间处理详解

    Python中的日期时间处理详解

    Python程序能用很多方式处理日期和时间。转换日期格式是一个常见的例行琐事,这篇文章主要介绍了Python中的日期时间处理的几种方式的区别和联系,需要的朋友可以参考下
    2016-11-11
  • Python MySQL数据库连接池组件pymysqlpool详解

    Python MySQL数据库连接池组件pymysqlpool详解

    这篇文章主要跟大家介绍了关于Python MySQL数据库连接池组件pymysqlpool的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • 详谈python3 numpy-loadtxt的编码问题

    详谈python3 numpy-loadtxt的编码问题

    下面小编就为大家分享一篇详谈python3 numpy-loadtxt的编码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04

最新评论