【python翻译软件V1.0】

如果不想使用密钥的形式,且需要一个直接可用的中英文翻译功能,可以使用一些免费的公共 API,如 opencc 或其他无需密钥的库,或直接用 requests 获取翻译结果。

其中,我可以给你一个简单的代码示例,使用 translate 库,这个库支持翻译,但它依赖的是一个免费的非官方翻译服务,且通常无需密钥。

1. 安装 translate 库:

bash 复制代码
pip install translate

2. Python 程序代码:

python 复制代码
import tkinter as tk
from tkinter import messagebox
from translate import Translator

# 翻译功能
def translate_text():
    input_text = text_input.get("1.0", "end").strip()
    if not input_text:
        messagebox.showwarning("警告", "请输入需要翻译的文本!")
        return

    # 根据选择的语言方向设置翻译
    if language_option.get() == "中译英":
        translator = Translator(to_lang="en", from_lang="zh")
    else:
        translator = Translator(to_lang="zh", from_lang="en")

    try:
        translated = translator.translate(input_text)
        text_output.delete("1.0", "end")
        text_output.insert("1.0", translated)
    except Exception as e:
        messagebox.showerror("翻译失败", f"翻译失败: {str(e)}")

# 创建主窗口
window = tk.Tk()
window.title("中英文翻译软件")
window.geometry("500x400")

# 输入文本框
text_input_label = tk.Label(window, text="请输入文本:")
text_input_label.pack(pady=10)
text_input = tk.Text(window, height=5, width=40)
text_input.pack()

# 翻译方向选择框
language_option = tk.StringVar(value="中译英")
language_frame = tk.Frame(window)
language_frame.pack(pady=10)
ch_to_en_radio = tk.Radiobutton(language_frame, text="中译英", variable=language_option, value="中译英")
en_to_ch_radio = tk.Radiobutton(language_frame, text="英译中", variable=language_option, value="英译中")
ch_to_en_radio.pack(side="left", padx=10)
en_to_ch_radio.pack(side="left", padx=10)

# 翻译按钮
translate_button = tk.Button(window, text="翻译", command=translate_text)
translate_button.pack(pady=10)

# 输出文本框
text_output_label = tk.Label(window, text="翻译结果:")
text_output_label.pack(pady=10)
text_output = tk.Text(window, height=5, width=40)
text_output.pack()

# 运行主循环
window.mainloop()

运行步骤:

  1. 安装 translate

    bash 复制代码
    pip install translate
  2. 运行脚本
    运行上述 Python 脚本,点击翻译按钮,直接输入需要翻译的文本。

主要特性:

  1. 无需密钥translate 库是一个轻量的库,使用的是一个公共的翻译接口,不需要额外的 API 密钥。
  2. 简洁易用:提供了一个简单的 Tkinter 界面,支持中英文翻译。

注意:

  • translate 库的翻译质量和速度可能不如官方 API,但它适合轻量和无需密钥的需求。
  • 由于使用的是免费的翻译接口,偶尔可能会因为接口变动而出现一些问题,建议适时检查和更新代码。
相关推荐
Goldn.25 分钟前
Java核心技术栈全景解析:从Web开发到AI融合
java· spring boot· 微服务· ai· jvm· maven· hibernate
我一定会有钱35 分钟前
斐波纳契数列、end关键字
python
虾..1 小时前
Linux 软硬链接和动静态库
linux·运维·服务器
Evan芙1 小时前
Linux常见的日志服务管理的常见日志服务
linux·运维·服务器
玄斎1 小时前
MySQL 单表操作通关指南:建库 / 建表 / 插入 / 增删改查
运维·服务器·数据库·学习·程序人生·mysql·oracle
李慕婉学姐1 小时前
【开题答辩过程】以《基于Android的出租车运行监测系统设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·后端·vue
小鸡吃米…2 小时前
Python 列表
开发语言·python
m0_740043732 小时前
SpringBoot05-配置文件-热加载/日志框架slf4j/接口文档工具Swagger/Knife4j
java·spring boot·后端·log4j
编织幻境的妖2 小时前
SQL查询连续登录用户方法详解
java·数据库·sql
未若君雅裁2 小时前
JVM面试篇总结
java·jvm·面试