1.图片展示:

2.写出上面图式的小脚本需要利用python两个方面的知识:

(1)可视化库 (需用库:tkinter)

(2)简单爬虫知识 (需用库:requests)

注意:爬虫在获取翻译信息时,会因为一些反爬虫的机制导致失败,所以从翻译网站获取翻译信息时,要选择稳定性强的翻译网站,并做好针对网站的反爬机制做好措施,防止出错。该脚本用的翻译网站是随意找的,因而容易出错,建议用百度翻译、有道翻译等一些好的翻译网站。

3.代码如下:

from tkinter import *
import requests # 在线翻译网站 post:f t w
start_url = "http://fy.iciba.com/ajax.php?a=fy"
# 创建窗口
root = Tk()
# 窗口标题
root.title("中英互译")
# 窗口大小
root.geometry("370x100+500+300")
# 标签控件
label1 = Label(root, text="输入要翻译的文字:")
label1.grid(row=0, column=0)
label2 = Label(root, text="翻译之后的结果:")
label2.grid(row=1, column=0)
# 输入控件
entry1 = Entry(root, font=("微软雅黑", 15))
entry1.grid(row=0, column=1)
entry2 = Entry(root, font=("微软雅黑", 15))
entry2.grid(row=1, column=1) # 按钮
def translate():
entry2.delete(0, 'end')
input_data = entry1.get()
if not input_data.isalpha():
input_data = input_data.lower()
data = {
"f": "auto",
"t": "auto",
"w": input_data
}
response = requests.post(start_url, data=data)
result = response.json()
output = result['content']['out']
else:
data = {
"f": "auto",
"t": "auto",
"w": input_data
}
response = requests.post(start_url, data=data)
result = response.json()
output = result['content']['word_mean'][0]
entry2.insert("insert", output) button1 = Button(root, text="翻译", width=10, command=translate)
# sticky(对齐方式):N S W E
button1.grid(row=2, column=0, sticky=W)
button1 = Button(root, text="退出", width=10, command=root.quit)
button1.grid(row=2, column=1, sticky=E)
# 显示窗口 消息循环
root.mainloop()

python-利用Python窗口可视化抽象开发山寨版翻译软件的更多相关文章

  1. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  2. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  3. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

  4. Python 利用Python编写简单网络爬虫实例3

    利用Python编写简单网络爬虫实例3 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站“http://bbs.51testing. ...

  5. Python 利用Python编写简单网络爬虫实例2

    利用Python编写简单网络爬虫实例2 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站“http://www.51testing. ...

  6. python 利用python的subprocess模块执行外部命令,获取返回值

    有时执行dos命令需要保存返回值 需要导入库subprocess import subprocess p = subprocess.Popen('ping www.baidu.com', shell= ...

  7. 了解python,利用python来制作日常猜拳,猜价小游戏

    初次接触python,便被它简洁优美的语言所吸引,正所谓人生苦短,python当歌.python之所以在最近几年越发的炽手可热,离不开它的一些特点: 1.易于学习:Python有相对较少的关键字,结构 ...

  8. Python: 利用Python进行数据分析 学习记录

    -----15:18 2016/10/14----- 1. import numpy as np;import pandas as pd values = pd.Series(np.random.no ...

  9. [Python] 利用Python做定时任务, 及时了解互联网动态

    前言 本人因为比较喜欢看漫画和动漫, 所以总会遇到一些问题, 因为订阅的漫画或者动漫太多, 总会忘记自己看到那一章节或者不知道什么时候更新. 故会有这么一个需求, 想记录自己想看的漫画或动画并在其更新 ...

随机推荐

  1. 去除Xcode6创建工程时自带的storyboard

    去除Xcode6创建工程时自带的storyboard 1. 删除storyboard文件,并在setting里面清空加载storyboard: 2. 导入ViewController到appDeleg ...

  2. Python学习---IO的异步[twisted模块]

    安装twisted模块 Linux: pip3 install twisted Window: a. http://www.lfd.uci.edu/~gohlke/pythonlibs/#twiste ...

  3. 字节(byte)与位(bit)基础回顾

    预估方式:一个uid,String类型,最长约50字节,即50Byte,一天100亿PV,则100亿*50Byte,约500G容量存ES中或Hbase中,无法存日志文件中,一个docker磁盘才50G ...

  4. select 下拉框 disabled 则 Form 获取不到值

    select 下拉框 disabled 则 Form 获取不到值 有时候需要禁用 下拉框 , 但是表单又需要获取到 下拉框的值. 解决方案1: 使用文本框和隐藏域 来代替下拉框 disabled 解决 ...

  5. SAP 前端技术的演化史简介

    Jerry之前曾经写过一篇微信公众号文章,题目叫<> 关注我的公号"汪子熙"后,在历史菜单"前端开发相关"里即可找到这篇文章: 该文章简单回顾了SA ...

  6. HBase性能优化 Java Api

    1. 使用“连接池” 如果每次和Hbase交互时都去新建连接的话,显然是低效率的,HBase也提供类连接池相关的API. 1.1. HTablePool 早期的API中使用它,但很不幸,现在它已经过时 ...

  7. ubuntu 12.04 64位 安装wps

    1.去wps官网下载linux版的软件 http://community.wps.cn/download/ 我这里下载的是Alpha版的kingsoft-office_9.1.0.4280~a12p4 ...

  8. Java设计模式16:常用设计模式之观察者模式(行为型模式)

    1. Java之观察者模式(Observer Pattern) (1)概述: 生活中我们在使用新闻app,当我们对某一栏比较感兴趣,我们往往会订阅这栏新闻,比如我对军事栏感兴趣,我就会订阅军事栏的新闻 ...

  9. struts2 标签使用注意

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qilixiang012/article/details/31954501 通常是用html标签.而不 ...

  10. 使用transient关键字解决ehcache序列化错误

    使用Ehcache时发现个不起眼的小问题 在一个Model中有以下代码: public class MyModel implements Serializable { private static f ...