这篇文章主要介绍了如何基于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制作有道翻译小工具相关推荐

  1. python论坛系统源码_十个基于Python的BBS论坛类开源web框架汇总(附源码地址

    1.LBForum LBForum是用django开发的论坛系统,LBForum主要注重部署的方便性和易用性,功能方面目前还比较简单. LBForum的开发尽量遵照Django可复用app原则,因此即 ...

  2. python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...

    如何利用python制作一个解压缩软件 python实现解压缩的重要模块就是--zipfile,其次是os 安装zipfile模块 首先得安装zipfile模块,打开cmd输入一下命令即可安装 pip ...

  3. python 获取excel文本框_如何基于python操作excel并获取内容

    这篇文章主要介绍了如何基于python操作excel并获取内容,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景:从excel表中获取请求url. ...

  4. python爬取有道翻译的代码_使用python2爬取有道翻译

    爬虫的核心思想:模拟浏览器正常访问服务器,一般情况只要浏览器能访问的,都可以爬,如果被反爬,则考虑反复测试添加Request Header数据,知道可以爬取为止. 反爬思路目前知道的有:User-Ag ...

  5. python开发app的软件_如何利用python开发手机app

    python语言虽然很万能,但用它来开发app还是显得有点不对路,因此用python开发的app应当是作为编码练习,加上目前这方面的模块还不是特别成熟,bug比较多. 准备工作 利用python开发a ...

  6. 如何制作python检查小软件_如何用Python制作整蛊小程序

    原标题:如何用Python制作整蛊小程序 下面的整蛊程序,千万不要发代码,否则就实现不了你整蛊的目的了.完成后一定要打包成一个exe程序,再发给朋友使用 . 1. 使用 pip install pyi ...

  7. 怎么用python制作随机点名软件_如何用python编写一个简易的随机点名软件?

    自问自答哈哈,高铁上随便写的代码 不过randint那里debug好像要(0, 3)不知道是什么原因 import random my_list = ['张三', '李四', '王五', '杨六'] ...

  8. 怎么用python制作随机点名软件_如何用python编写一个简易的随机点名软件

    展开全部 思路:1.定义一个字2113典,把名字和数字对应起5261来:2.引用随机4102模块:3.输入要点名的个数1653,通过循环输出名字. 具体代码如下:# -*- coding:utf-8 ...

  9. python人工智能文字识别软件_怎么用Python人工智能识别图片-百度AI文字识别使用方法分享 - Iefans...

    如果你是个Python初学者,那么你可以试着做做看这个教程,毕竟编程技能都是在实战中成长的,这篇教程是教你如何用Python来进行人工智能识别图片,可以帮助你解决日常办公时遇到的图片转换文字的问题. ...

最新文章

  1. python基础-------迭代器,生成器,协程函数
  2. [YTU]_2919( Shape系列-5)
  3. ROS机器人程序设计(原书第2版)3.4 设置动态参数
  4. 快速学习EndNote X7
  5. 矩阵维度必须一致_如何从看得懂到会使用矩阵思维
  6. oracle实现mysql的if_【原创】ORACLE的几个函数在MYSQL里面的简单实现
  7. Effective_STL 学习笔记(四) 用 empty 来代替检查 size() 是否为0
  8. linux查进程内存问题,关于linux下内存问题排查的工具
  9. 17 任务调度相关类综述——Live555源码阅读(一)任务调度相关类
  10. [转载] python字符串方法有哪些_27种Python字符串操作方法大全
  11. 生成fnt字体工具BMFontTool工具
  12. win10电脑找不到xps查看器的详细解决步骤
  13. 怎么打开优酷的kux格式?教你把kux转换成mp4的方法
  14. rrpp协议如何修改_RRPP快速环网保护协议
  15. Csharp基础整理
  16. android脚本实现自动捉妖,一起来捉妖自动秒杀脚本下载-一起来捉妖自动秒杀辅助 最新版_爱下手机站...
  17. 区块链学习笔记4——BTC实现
  18. XDOJ 1202: The Offer - Lunatic
  19. 车载以太网会是传统总线的末路吗?
  20. 关于Surface键盘突然失灵的解决方案

热门文章

  1. 图片上传流程前端上传文件后端保存文件并返回图片地址
  2. 学习笔记——Kaggle_Digit Recognizer (Random Forest算法 Python实现)
  3. 用ShaderToy实现牛顿迭代法分形图像
  4. 【万字干货】美团旅游推荐系统的演进
  5. 基于Matlab裂缝识别检测系统
  6. 台湾国立大学郭彦甫Matlab教程笔记(5)structured programming
  7. 俄罗斯套娃程序java_原创(俄罗斯套娃程序) | 学步园
  8. 编译原理第一章-编译原理概述
  9. PHP如何使用gregoriantojd()函数进行日期转换?
  10. [imx8mpevk] pcie endpoint test