如何解决TranslationError:DeepL调用导致未知结果?Python Pydeepl



我想使用pydeepl来翻译python上的一些句子。我已经安装了pydeepl,并复制了与此库主页相同的代码:

import pydeepl
sentence = 'I like turtles.'
from_language = 'EN'
to_language = 'ES'
translation = pydeepl.translate(sentence, to_language, from_lang=from_language)
print(translation)

不幸的是,我收到了以下错误:
翻译错误:DeepL调用导致未知结果。

有人能帮忙吗?提前感谢!

看起来API只有在您付费时才可用,不再免费。。。

EDIT:DeepL Python库Guemez先生部分是对的,请求现在只通过官方的DeepL api密钥。话虽如此,它们既有付费版本,也有免费版本。

无深度L的API有500000个字符/Mo。限制,而付费版本的固定费用为每月5美元。,额外的$20/20000000个字符。如果你担心在付费版本中超过成本,DeepL提供了一个成本控制设置,你可以设置它来确保你不会超过一定的货币上限。现在不仅有API的免费版本,还有一个官方的DeepL Python库:

运行一个简单的

pip install deepl

你可以很容易地开始:如果你不在乎对auth_key进行硬编码,你可以这样声明一个翻译器对象:

translator = deepl.Translator("DEEPL_AUTH_KEY")

如果你不想对它进行硬编码,你可以这样将它设置为环境变量:translator = deepl.Translator(os.getenv("DEEPL_AUTH_KEY"))(

然后你可以很容易地翻译字符串文本如下:

# (Taken from the documentation)
# Translate text into a target language, in this case, French
result = translator.translate_text("Hello, world!", target_lang="FR")
print(result)  # "Bonjour, le monde !"

以及像这样的多个字符串:

# (Taken from the documentation)
# Translate multiple texts into British English
result = translator.translate_text(["お元気ですか?", "¿Cómo estás?"], target_lang="EN-GB")
print(result[0].text)  # "How are you?"
print(result[0].detected_source_lang)  # "JA"
print(result[1].text)  # "How are you?"
print(result[1].detected_source_lang)  # "ES"

如果你需要翻译完整的文档,你也可以通过:

translator.translate_document_from_filepath(
"path/to/write/to/WhatABeautifulDay.docx", # Translated File
"path/to/original/CheBellissimaGiornata.docx", # Original File
target_lang="EN-US"
)

作为旁注,DeepL";EN";选项已弃用,您现在必须使用";EN-US";或";EN-GB";在您的请求中。


OUTDATED(仍然适用于翻译字符串(

要在python中使用api密钥,您必须按照以下方式构建查询:

import requests    
raw_returned_data = requests.post(
url="https://api.deepl.com/v2/translate",
data={
"target_lang": "EN",
"auth_key": auth_key, # where auth key is your api key
"text": data # you can pass in a hard coded string or variable
},
)

查看响应:

returned_data = raw_returned_data.json()["translations"][0]["text"]

最新更新