import sys
import deepl
import io
from langdetect import detect

# 设置标准输出为 UTF-8 编码
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')

# 获取命令行参数中的输入文本
originalText = sys.argv[1]

# 设置你的 DeepL API 密钥
auth_key = ""  # 替换为你的实际 API 密钥
server_url = "https://api.deepl-pro.com"

# 创建一个 DeepL 翻译器对象
translator = deepl.Translator(auth_key, server_url=server_url)

# 检查输入文本的字符数是否超过20个字符
if len(originalText) > 15:
    # 检测输入文本的语言
    detected_lang = detect(originalText)

    # 根据检测到的语言选择目标语言
    if detected_lang == 'zh-cn' or detected_lang == 'zh-tw':
        target_lang = "EN-GB"  # 或者 "EN-US"
    else:
        target_lang = "ZH"

    # 进行翻译
    result = translator.translate_text(originalText, target_lang=target_lang)
    # 打印翻译结果
    print(result.text)
else:
    # 如果字符数不超过20个字符，直接退出脚本，不进行任何操作
    sys.exit()