python-利用Python窗口可视化抽象开发山寨版翻译软件

1.图片展现:php

 

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

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

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

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

3.代码以下:post

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()
相关文章
相关标签/搜索