如何基于Python制作有道翻译小工具


Posted in Python onDecember 16, 2019

这篇文章主要介绍了如何基于Python制作有道翻译小工具,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

该工具主要是利用了爬虫,爬取web有道翻译的内容. 然后利用简易GUI来可视化结果。

首先我们进入有道词典的首页,并点击翻译结果的审查元素

之后request响应网页,并分析网页,定位到翻译结果。

使用tkinter来制作一个建议的GUI

期间遇到的一个问题则是如何刷新翻译的结果,否则的话会在text里一直累加翻译结果。

于是,在mainloop里面用到了T1.delete方法,来每次删除TEXT里的内容。

import urllib.request
import urllib.parse
import json
import tkinter as tk
from tkinter import *

from tkinter import messagebox

window = tk.Tk()
window.geometry('600x400+200+200')
window.title("有道词典翻译")
L1=tk.Label(window,text='请输入翻译内容:',font=('楷体',20),fg='blue')
L1.place(x=30)
E1=tk.Entry(window,text="",font=('宋体',16),width=30)
E1.place(x=80,y=50)
def transit():
  T1.delete(1.0, tk.END)
  var = E1.get()
  if var == '':
    messagebox.showinfo('提示', message='请输入要翻译内容')
  else:

    data = {
      'i': var,
      'from': 'AUTO',
      'to': 'AUTO',
      'smartresult': 'dict',
      'client': 'fanyideskweb',
      'salt': '15619904887064',
      'sign': 'a14ab29954353efd9d6aa92ebd94aa62',
      'ts': '1561990488706',
      'bv': '3a019e7d0dda4bcd253903675f2209a5',
      'doctype': 'json',
      'version': '2.1',
      'keyfrom': 'fanyi.web',
      'action': 'FY_BY_CLICKBUTTION'
    }
    url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"

    data = urllib.parse.urlencode(data).encode('utf-8')
    response = urllib.request.urlopen(url,data)
    html = response.read().decode('utf-8')

    #print(html)
    target=json.loads(html)
    #print(target)
    #a=target['translateResult'][0][0]
    #print(a)
    b=target['translateResult'][0][0]['tgt']
    #print(b)
    T1.insert('end', b)



T1=tk.Text(window,height=4)
T1.place(x=20,y=130)

B1=tk.Button(window,text='TransLate it',width=10,height=3,fg='red',command=transit)
B1.place(x=500,y=30)

canvas = tk.Canvas(window, height=160, width=500)#创建画布
image_file = tk.PhotoImage(file="cat.gif")#加载图片文件
image = canvas.create_image(0,0, anchor='nw', image=image_file)#将图片置于画布上
canvas.place(x=50,y=210)#放置画布(为上端)
window.mainloop()

以下是运行结果:

如何基于Python制作有道翻译小工具

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 中文字符串的处理实现代码
Oct 25 Python
python获取网页状态码示例
Mar 30 Python
手动实现把python项目发布为exe可执行程序过程分享
Oct 23 Python
在Python中使用SimpleParse模块进行解析的教程
Apr 11 Python
用Python的Tornado框架结合memcached页面改善博客性能
Apr 24 Python
python实现类的静态变量用法实例
May 08 Python
Python 数据结构之旋转链表
Feb 25 Python
TensorFLow用Saver保存和恢复变量
Mar 10 Python
解决TensorFlow训练内存不断增长,进程被杀死问题
Feb 05 Python
python实现ftp文件传输功能
Mar 20 Python
学生如何注册Pycharm专业版以及pycharm的安装
Sep 24 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
Nov 11 Python
django框架单表操作之增删改实例分析
Dec 16 #Python
Python生成个性签名图片获取GUI过程解析
Dec 16 #Python
Python列表切片常用操作实例解析
Dec 16 #Python
python之pymysql模块简单应用示例代码
Dec 16 #Python
python装饰器使用实例详解
Dec 14 #Python
python函数不定长参数使用方法解析
Dec 14 #Python
python如何实现不用装饰器实现登陆器小程序
Dec 14 #Python
You might like
PHP 开发环境配置(Zend Studio)
2010/04/28 PHP
PHP模块memcached使用指南
2014/12/08 PHP
Laravel 5框架学习之子视图和表单复用
2015/04/09 PHP
PHP图片水印类的封装
2017/07/06 PHP
PHP判断一个数组是另一个数组子集的方法详解
2017/07/31 PHP
PHP面向对象多态性实现方法简单示例
2017/09/27 PHP
laravel 多图上传及图片的存储例子
2019/10/14 PHP
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
IE关闭时判断及AJAX注销案例学习
2013/02/18 Javascript
基于javascipt-dom编程 table对象的使用
2013/04/22 Javascript
jquery.post用法关于type设置问题补充
2014/01/03 Javascript
javascript+html5实现绘制圆环的方法
2015/07/28 Javascript
js实现向右横向滑出的二级菜单效果
2015/08/27 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
AngularJS实现单独作用域内的数据操作
2016/09/05 Javascript
js实现固定宽高滑动轮播图效果
2017/01/13 Javascript
js仿淘宝商品放大预览功能
2017/03/15 Javascript
简单实现jQuery轮播效果
2017/08/18 jQuery
vue elementui form表单验证的实现
2018/11/11 Javascript
Vue实例的对象参数options的几个常用选项详解
2019/11/08 Javascript
[01:09]DOTA2次级职业联赛 - ishow.HMM战队宣传片
2014/12/01 DOTA
python获取android设备的GPS信息脚本分享
2015/03/06 Python
Python内置函数—vars的具体使用方法
2017/12/04 Python
Python代码太长换行的实现
2019/07/05 Python
Python寻找路径和查找文件路径的示例
2019/07/10 Python
pytorch多进程加速及代码优化方法
2019/08/19 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
BeautifulSoup获取指定class样式的div的实现
2020/12/07 Python
matplotlib之pyplot模块坐标轴标签设置使用(xlabel()、ylabel())
2021/02/22 Python
学习2014年全国两会心得体会
2014/03/12 职场文书
全国爱眼日活动总结
2015/02/27 职场文书
2015少先队大队辅导员工作总结
2015/07/24 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
公司与个人合作协议书
2016/03/19 职场文书
责任书格式
2019/04/18 职场文书
《学会生存》读后感3篇
2019/12/09 职场文书