调用某翻译接口实现简单翻译界面

您所在的位置:网站首页 eviews界面翻译 调用某翻译接口实现简单翻译界面

调用某翻译接口实现简单翻译界面

2023-03-03 19:41| 来源: 网络整理| 查看: 265

前言

基于python爬虫方面,我们能做很多事,这里,我们先找到百度翻译的接口,然后自己构建逻辑,实现建议窗口汉语翻译英语功能。

一、思路梳理

1.分析翻译数据返回逻辑 2.构建js代码,(未在本文中,需要的话评论区留言,看到即回) 3.构建弹窗页面及翻译逻辑

二、思路3的文件代码展示1.引入库 import tkinter as tk #制作Gui界面模块 import execjs # 读取编译调用js文件模块 import requests # 向网页发送请求获取数据模块

代码如下(示例):

import tkinter as tk import execjs import requests root = tk.Tk( ) root.title('翻译') root.geometry("500x300+500+250") text_1 = tk.Text(root, width=50, height=5) text_1.pack( ) def get_text(): t_1 = text_1.get(1.0, tk.END) # print(t_1) return t_1 def read_data(data): with open('百度翻译.js', 'r', encoding='utf-8') as f: da = f.read( ) compile_obj = execjs.compile(da) result = compile_obj.call('e', data) return result def get_response(datas): url = 'https://fanyi.baidu.com/v2transapi?from=zh&to=en' try: data = { 'from': 'zh', # 可改en 'to': 'en', # 可改zh 'query': get_text(), 'transtype': 'realtime', 'simple_means_flag': '3', 'sign': datas, 'token': 'a6abf59616c25dcdcaa262792201a405', 'domain': 'common', } headers = { 'Acs-Token': '1660287615129_1660357230304_SE+8Vutz/+xDfhHlNTX11Q5kcgoKISVEIe3SKT1Bgt0dagrXBuMgkNbWX7UBDRGog3gP+rCgr2J3mQ0RM8kr5Fn228UMbwIlz/4LxQXgA1Mg7/CTQznS2O6naNmQnSuFzwJpbb5XmVJUytbU3lfeflxRUw+bslZCZ3JyMP4SMxtOXaMybRt6AJlrJkO/3FAbn2CCevJKCoILwwZ0UQy9sAGVHUQkclJpWv6pt9guvfveB6KKyLox4986jtzQazmDh+UuMv4OXzuN129siaQVomZ8NRNA4fR6Wzz/eHwN3HQtmJkyBWAIaIJ0Fh00udN9ZWHuUd5eAfs0bvRmfz1Xccs6YuLrIkGcUMpLrh8+ZB4=', 'Cookie': 请添加自己的cookie, 'Host': 'fanyi.baidu.com', 'Origin': 'https: // fanyi.baidu.com', 'Referer': 'https: // fanyi.baidu.com /?aldtype = 16047', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36', } response = requests.post(url=url, data=data, headers=headers).json( ) # print(response) # print(response['trans_result']['data'][0]['dst']) x = response['trans_result']['data'][0]['dst'] return x except: get_response(datas) def main(): h = get_text() r = read_data(h) l = get_response(r) text_2.delete(0.0, tk.END) text_2.insert(tk.INSERT, l) btnRead = tk.Button(root, height=1, width=10, text="翻译", command=main) btnRead.pack( ) text_2 = tk.Text(root, width=50, height=10) text_2.pack( ) root.mainloop( )

以上只支持汉译英,想要英译汉就需要改里面所标注的。

总结

这块只是简单的单方面翻译,想要源码的到评论区私信我,有修改想法的可以对照修改。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3