Pycharm 自制翻译扩展

源代码

# !/usr/bin/env python3
# -*- coding: UTF-8 -*-
"""
@author: JHC 
@license: None
@contact: JHC000abc@gmail.com
@file: get_coogle_translate_results.py
@time: 2022/11/12/ 22:12
@desc:
"""
import requests
import win32clipboard as w
import win32con

# 调用谷歌翻译接口(单词),获取翻译结果
def translate(text):
    return requests.post("https://hf.space/embed/mikeee/gradio-gtr/+/api/predict", json={"data": [text, "en", "zh"]}).json()["data"][0]

# 获取剪切板中最后一个值
def get_text():
    w.OpenClipboard()
    d = w.GetClipboardData(win32con.CF_TEXT)
    w.CloseClipboard()
    return d.decode('GBK')

if __name__ == '__main__':
    text = get_text()
    print("待翻译文本: {}".format(text))
    translte_result = translate(text)
    print("翻译结果: {}".format(translte_result))

将上述源代码打包成exe
pyinstaller -F -w get_coogle_translate_res
ults.py

pycharm中,File–>setting–>Tools–>External Tools -->±-> Name:(随便什么都行),Program:填exe绝对路径–>OK

pycharm中,File–>setting–>Keymap–>搜索External Tools 选择刚才填在Name后边的值,右键Add Keyboard Shortcut 然后输入快捷键 点击OK即可生效

使用:
复制要翻译的文本,输入配置好的快捷键出发快捷方式,即可看到翻译结果

# !/usr/bin/env python3
# -*- coding: UTF-8 -*-
"""
@author: JHC 
@license: None
@contact: JHC000abc@gmail.com
@file: tran_baidu.py
@time: 2022/11/12/ 23:58
@desc:调用https://fanyi-api.baidu.com/manage/developer(百度翻译开放平台)接口,实现翻译
	需要申请开发者,获取appid 和 secret 配置到下方程序中,即可使用,自动检测输入文本,输出为中文,支持
自动检测    auto    
粤语  yue 
韩语  kor 
泰语  th  
葡萄牙语    pt  
希腊语 el  
保加利亚语   bul 
芬兰语 fin 
斯洛文尼亚语  slo 
繁体中文    cht
中文  zh
文言文 wyw
法语  fra
阿拉伯语    ara
德语  de
荷兰语 nl
爱沙尼亚语   est
捷克语 cs
瑞典语 swe
越南语 vie

"""
import hashlib
import requests


def make_md5(item, salt=b""):
    item = item.rstrip("\n")
    md5_machine = hashlib.md5(salt)
    md5_machine.update(item.encode('utf-8'))
    return md5_machine.hexdigest()

def make_sign(appid,query,secret,salt):
    return make_md5(appid + query + salt + secret)

def get_tran_result(url, query, appid, salt, sign):
    req_url = "{}?q={}&from=auto&to=zh&appid={}&salt={}&sign={}".format(
        url, query, appid, salt, sign
    )
    response = requests.get(req_url)
    return "".join([i["dst"] for i in response.json()["trans_result"]])




if __name__ == '__main__':
    url = "https://fanyi-api.baidu.com/api/trans/vip/translate"
    appid = ""
    secret = ""
    salt = "translate"
    query = input("输入要翻译的英文: ")
    sign = make_sign(appid, query, secret,salt)
    tran_result = get_tran_result(url, query, appid, salt, sign)
    print("翻译结果: ",tran_result)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值