亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python利用PySimpleGUI實(shí)現(xiàn)自制桌面翻譯神器

 更新時間:2022年09月20日 09:49:35   作者:熱愛科技的劉同學(xué)  
工作上經(jīng)常需要與外國友人郵件溝通,奈何工作電腦沒有安裝有道詞典一類的翻譯軟件,結(jié)合自己的需要,自己用PySimpleGUI擼一個桌面翻譯神器,感興趣的可以了解一下

一、基本思路

基于PySimpleGUI開發(fā)桌面GUI→獲取鍵盤輸入→接入谷歌翻譯API→爬蟲獲取翻譯結(jié)果【其中涉及到正則表達(dá)式匹配翻譯結(jié)果輸出翻譯結(jié)果口翻譯完成。

二、PySimpleGUI是什么

創(chuàng)建圖形用戶界面(GUI)可能很困難,有許多不同的PythonGUI工具包可供選擇。最常提到的前三名是 Tkinter,wxPython和PyQt .但是PySimpleGUI的較新工具包,其目的是使創(chuàng)建GUI更加容易。

三、代碼分析

廢話不能多,上分析!

1、引入包

可能有點(diǎn)兒多,但是下面的每一個包都必須用pip安裝:

from optparse import Values
import re
import html
from tkinter import font
from urllib import parse
import requests
import PySimpleGUI as sg

2、谷歌翻譯網(wǎng)址

該處使用的ur網(wǎng)絡(luò)請求的數(shù)據(jù),這里用到了字符串格式化方法需要用到三個參數(shù):

text—需要翻譯的內(nèi)容、to_language—日標(biāo)語音類型、text_Language—當(dāng)前話言類型。

url = 'http://translate.google.cn/m?q=%s&tl=%s&sl=%s'

3、構(gòu)建翻譯函數(shù)

def translate(text, to_language="en", text_language="auto"):
    text = parse.quote(text)
    urll = url % (text, to_language ,text_language)
    response = requests.get(urll)
    data = response.text
    expr = r'(?s)class = "(?:t0|result-container)">(.*?)<'
    result = re.findall(expr, data)
    print (result)
    if (len(result) == 0):
        return ""
    return html.unescape(result[0])

4、GUI構(gòu)建

g.theme('bluepurple')
font = {"fangsong", 12}
menu = [["Help", ["About", "Item", "Author"]]]
value = ['漢語', '英語', '日語', '法語', '俄語', '自動']

var = ['zh', 'en', 'ja', 'fr', 'ru', 'auto']
dic = dict(zip(value, var))
layout = [[sg.Menu(menu, tearoff = False)],
          [sg.Text(text='Input', size=(26, 1)),
           sg.Text(text='將', size=(2, 1), justification='center'),
           sg.Combo(values=value, key='from', size=(10, 1)),
           sg.Text(text='翻譯為', size=(5, 1), justification='center'),
           sg.Combo(values=value, key='to', size=(10, 1))],
          [sg.Multiline(key='-IN-', size=(60, 0), font=font)],
          [sg.Text(text='Output', size=(30, 1))],
          [sg.Multiline(key="-OUT-", size=(60, 8), font=font)],
          [sg.Text(text='', size=(36, 1)),
           sg.Button("翻譯", size=(6, 1)),
           sg.Button("清除", size=(6, 1)),
           sg.Button("退出", size=(6, 1))]
          ]

window = sg.Window("自制桌面翻譯器", layout, icon="CT.ico")

while True:
    event, value = window.read()
    if event in (None, "退出"):
        break
    if event == "翻譯":
        if Values["to"] == '' or Values["from"] == '':
            sg.Popup("請嘗試選擇語言類型后嘗試,謝謝!")
        else:
            tar = translate(Values["-IN-"], dic[Values["to"]], dic[Values["from"]])
            window["-OUT-"].Update(tar)
    if event == "清除":
        window["-IN-"].Update("")
        window["-OUT-"].Update("")
    if event == "About":
        sg.Popup("使用方法:",
                 "'翻譯'確認(rèn)輸入,并輸出翻譯結(jié)果"
                 "'清除'清除已有輸入,清空翻譯結(jié)果",
                 "'退出'取消,并退出App", title='', font=font, auto_close=1)
    if event == "Item":
        sg.Popup("翻譯類型:",
                 "'輸入類型'輸入的語言類型",
                 "'輸出類型',輸出語言類型", title='', font=font, auto_close=1)
    if event == "Author":
        sg.Popup("作者簡介:",
                 "姓名:劉鎮(zhèn)鳴",
                 "微信/電話:17734258540",
                 "E-mail:2124619132@qq.com", title='', font=font, auto_close=1)
window.close()

四、Github開源地址

Github開源地址:https://github.com/ProgramApeInn/PySimpleGUI-Root-App

到此這篇關(guān)于Python利用PySimpleGUI實(shí)現(xiàn)自制桌面翻譯神器的文章就介紹到這了,更多相關(guān)Python PySimpleGUI桌面翻譯內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python 如何實(shí)現(xiàn)訪問者模式

    Python 如何實(shí)現(xiàn)訪問者模式

    這篇文章主要介紹了Python 如何實(shí)現(xiàn)訪問者模式,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Python?第三方庫?openpyxl?的安裝過程

    Python?第三方庫?openpyxl?的安裝過程

    這篇文章主要介紹了Python?高效辦公第三方庫?openpyxl?的安裝,本文介紹了什么是庫及庫的分類,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12
  • python PIL模塊與隨機(jī)生成中文驗(yàn)證碼

    python PIL模塊與隨機(jī)生成中文驗(yàn)證碼

    今天我們要學(xué)習(xí)的內(nèi)容是如何利用Python生成一個隨機(jī)的中文驗(yàn)證碼,并將圖片保存為.jpeg格式,需要的朋友可以參考下
    2016-02-02
  • Conda創(chuàng)建新環(huán)境的詳細(xì)圖文教程

    Conda創(chuàng)建新環(huán)境的詳細(xì)圖文教程

    Anaconda功能龐大,其可以理解為一個工具,也是一個可執(zhí)行命令,下面這篇文章主要給大家介紹了關(guān)于Conda創(chuàng)建新環(huán)境的詳細(xì)圖文教程,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • Python 實(shí)現(xiàn)將numpy中的nan和inf,nan替換成對應(yīng)的均值

    Python 實(shí)現(xiàn)將numpy中的nan和inf,nan替換成對應(yīng)的均值

    這篇文章主要介紹了Python 實(shí)現(xiàn)將numpy中的nan和inf,nan替換成對應(yīng)的均值,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Django如何創(chuàng)作一個簡單的最小程序

    Django如何創(chuàng)作一個簡單的最小程序

    這篇文章主要介紹了Django如何創(chuàng)作一個簡單的最小程序,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式

    Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式

    這篇文章主要介紹了Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • python項(xiàng)目運(yùn)行導(dǎo)致內(nèi)存越來越大的原因詳析

    python項(xiàng)目運(yùn)行導(dǎo)致內(nèi)存越來越大的原因詳析

    最近在跑python程序時,出現(xiàn)占用的內(nèi)存不斷增加的情況,下面這篇文章主要給大家介紹了關(guān)于python項(xiàng)目運(yùn)行導(dǎo)致內(nèi)存越來越大的原因詳析,本文通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • python3.7將代碼打包成exe程序并添加圖標(biāo)的方法

    python3.7將代碼打包成exe程序并添加圖標(biāo)的方法

    這篇文章主要介紹了python3.7將代碼打包成exe程序并添加圖標(biāo)的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-10-10
  • python學(xué)習(xí)之第三方包安裝方法(兩種方法)

    python學(xué)習(xí)之第三方包安裝方法(兩種方法)

    這篇文章主要介紹了python學(xué)習(xí)之第三方包安裝方法,最近在學(xué)習(xí)QQ空間、微博(爬蟲)模擬登錄,都涉及到了RSA算法。這樣需要下一個RSA包(第三方包),在網(wǎng)上搜了好多資料,在此做了總結(jié),需要的朋友可以參考下
    2015-07-07

最新評論