python 은 tkinter 로 gui 의 번역 도 구 를 실현 합 니 다.


#!/usr/bin/env python
# -*- coding: utf-8 -*-

from tkinter import *
import hashlib
import time
import json
import requests
import random
LOG_LINE_NUM = 0

class MY_GUI():
  def __init__(self,init_window_name):
    self.init_window_name = init_window_name
    self.headers = {

      'User-Agent': '   User-Agent',

      'Referer': 'http://fanyi.youdao.com/',

      'Cookie': '   Cookie'

    }

    self.data = {

      'i': None,

      'from': 'AUTO',

      'to': 'AUTO',

      'smartresult': 'dict',

      'client': 'fanyideskweb',

      'salt': None,

      'sign': None,

      'ts': None,

      'bv': None,

      'doctype': 'json',

      'version': '2.1',

      'keyfrom': 'fanyi.web',

      'action': 'FY_BY_REALTlME'

    }

    self.url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'


  #    
  def set_init_window(self):
    self.init_window_name.title("    _v1.0")      #   
    #self.init_window_name.geometry('320x160+10+10')             #290 160     ,+10 +10               
    self.init_window_name.geometry('1068x681+10+10')
    #self.init_window_name["bg"] = "pink"                  #     ,      :blog.csdn.net/chl0000/article/details/7657887
    #self.init_window_name.attributes("-alpha",0.9)             #  ,         
    #  
    self.init_data_label = Label(self.init_window_name, text="     ")
    self.init_data_label.grid(row=0, column=0)
    self.result_data_label = Label(self.init_window_name, text="    ")
    self.result_data_label.grid(row=0, column=12)
    self.log_label = Label(self.init_window_name, text="  ")
    self.log_label.grid(row=12, column=0)
    #   
    self.init_data_Text = Text(self.init_window_name, width=67, height=35) #       
    self.init_data_Text.grid(row=1, column=0, rowspan=10, columnspan=10)
    self.result_data_Text = Text(self.init_window_name, width=70, height=49) #      
    self.result_data_Text.grid(row=1, column=12, rowspan=15, columnspan=10)
    self.log_data_Text = Text(self.init_window_name, width=66, height=9) #    
    self.log_data_Text.grid(row=13, column=0, columnspan=10)
    #  
    self.str_trans_to_md5_button = Button(self.init_window_name, text="  ", bg="lightblue", width=10,command=self.str_trans) #         ()     
    self.str_trans_to_md5_button.grid(row=1, column=11)


  #    
  def str_trans(self):
    word = self.init_data_Text.get(1.0,END).strip().replace("
","") #print("src =",word) if word: try: ts = str(int(time.time() * 10000)) salt = str(int(time.time() * 10000) + random.random() * 10 + 10) sign = 'fanyideskweb' + word + salt + ']BjuETDhU)zqSxf-=B#7m' sign = hashlib.md5(sign.encode('utf-8')).hexdigest() bv = '5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36' bv = hashlib.md5(bv.encode('utf-8')).hexdigest() self.data['i'] = word self.data['salt'] = salt self.data['sign'] = sign self.data['ts'] = ts self.data['bv'] = bv re = requests.post(self.url, headers=self.headers, data=self.data) jieguo = re.json()['translateResult'][0][0].get('tgt') #print(jieguo) # self.result_data_Text.delete(1.0,END) self.result_data_Text.insert(1.0,jieguo) self.write_log_to_Text("INFO: success") except: self.result_data_Text.delete(1.0,END) self.result_data_Text.insert(1.0," ") else: self.write_log_to_Text("ERROR:str_trans failed") # def get_current_time(self): current_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) return current_time # def write_log_to_Text(self,logmsg): global LOG_LINE_NUM current_time = self.get_current_time() logmsg_in = str(current_time) +" " + str(logmsg) + "
" # if LOG_LINE_NUM <= 7: self.log_data_Text.insert(END, logmsg_in) LOG_LINE_NUM = LOG_LINE_NUM + 1 else: self.log_data_Text.delete(1.0,2.0) self.log_data_Text.insert(END, logmsg_in) def gui_start(): init_window = Tk() # ZMJ_PORTAL = MY_GUI(init_window) # ZMJ_PORTAL.set_init_window() init_window.mainloop() # , , gui_start()
실행 효과:

자신 은 pyinstaller 로 exe 로 포장 하여 언제든지 사용 할 수 있 습 니 다.

생략 하고 웹 페이지 를 열 어 번역 웹 페이지 를 검색 하고 번역 소프트웨어 를 다운로드 하 세 요.
이상 은 python 이 tkinter 로 gui 의 번역 도 구 를 실현 하 는 상세 한 내용 입 니 다.python 번역 도구 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!

좋은 웹페이지 즐겨찾기