Un script qui traduit des phrases anglaises en japonais. C'est une classe de Old Code. Je l'ai créé parce que la bibliothèque distribuée ne fonctionnait pas bien.
Vous devez obtenir la clé API de Google Cloud. (Vous pouvez le faire tout de suite)
google_translate.py
import requests
import json
import time
class GoogleTranslate:
def __init__(self):
self.private_key = '<Mettez la clé API ici>'
def post_text(self,text):
url_items = 'https://www.googleapis.com/language/translate/v2'
item_data = {
'target': 'ja',
'source': 'en',
'q':text
}
response = requests.post('https://www.googleapis.com/language/translate/v2?key={}'.format(self.private_key), data=item_data)
return json.loads(response.text)["data"]["translations"][0]["translatedText"]
def split_and_send_to_post(self,text):
sen_list = text.split('.')
to_google_sen = ""
translated_text = ""
for index, sen in enumerate(sen_list[:-1]):
to_google_sen += sen + '. '
if len(to_google_sen)>1000:
#Envoyer à Google s'il dépasse 1 000 caractères
translated_text += self.post_text(to_google_sen)
time.sleep(3)
to_google_sen = ""
if index == len(sen_list)-2:
#Traduction de la dernière phrase
translated_text += self.post_text(to_google_sen)
time.sleep(1)
return translated_text
def main(self,text):
original_text = text
if original_text[-1] != '.':
original_text+='.'
#.Si cela ne se termine pas par, cela interférera avec le processus de division.
text_translated = self.split_and_send_to_post(original_text)
print(text_translated)
return text_translated
test.py
from google_translate import *
input_text = input('Veuillez convertir en anglais et entrez le mot que vous souhaitez rechercher en japonais:')
google_tr = GoogleTranslate()
translated = google_tr.main(input_text)
print(translated)