tran.py
import json
import urllib.parse
import urllib.request
import re
def translate(text, s_lang='', t_lang=''):
DEEPL_TRANSLATE_EP = 'https://api.deepl.com/v2/translate'
headers = {
'Content-Type': 'application/x-www-form-urlencoded; utf-8'
}
params = {
'auth_key': "",#Geben Sie hier den API-Schlüssel ein
'text': text,
'target_lang': t_lang
}
if s_lang != '':
params['source_lang'] = s_lang
req = urllib.request.Request(
DEEPL_TRANSLATE_EP,
method='POST',
data=urllib.parse.urlencode(params).encode('utf-8'),
headers=headers
)
try:
with urllib.request.urlopen(req) as res:
res_json = json.loads(res.read().decode('utf-8'))
res_json=res_json["translations"][0]["text"]
return json.dumps(res_json, indent=2, ensure_ascii=False)
except urllib.error.HTTPError as e:
return "Konnte es nicht bekommen."
#Das obige hinzugefügt
with open('text.txt') as f:
text = f.read()
text=re.sub('\n', ' ', text)
text = translate(text, s_lang='', t_lang='JA')
text=re.sub('\n', ' ', text)
print(text)
Platzieren Sie tran.py und text.txt in derselben Hierarchie und geben Sie den englischen Text ein, den Sie in text.txt übersetzen möchten
python tran.py
Führen Sie tran.py aus.
Ich habe versucht, DeepL API mit Python zu verwenden
Recommended Posts