1 pièce(s) jointe(s)
Code Python Terminal/Tkinter
Bonjour,
Je réalise en ISN un traducteur vocal, qui traduit vocalement vos phrases :D
Pour cela, j'ai réalisé un code avec mes amis pour pouvoir utiliser le script "primaire" (que j'avais conçu initialement dans le Terminal d'OS X) dans une fenêtre (une jolie interface quoi 8-)) à l'aide de Tkinter.
Hélas, je rencontre quelques problèmes, j'en suis actuellement à ça :
Pièce jointe 210093
Or, mon programme (initialement la fonction hydra()) fonctionnait très bien dans le Terminal sous OS X El Capitan, donc je ne sais pas trop pourquoi je rencontre cette erreur :?
J'essaye en fait, au lieu de passer par le Terminal, d'avoir une interface "sympa" dans une fenêtre avec des boutons etc... ;)
Le message d'erreur du Terminal est le suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
Exception in Tkinter callback
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 1536, in __call__
return self.func(*args)
File "/Users/SteveJobs/Desktop/hydra.py", line 45, in spoke
en_blob = fr_blob.translate(from_lang='fr', to='en')
File "/Library/Python/2.7/site-packages/textblob/blob.py", line 505, in translate
from_lang=from_lang, to_lang=to))
File "/Library/Python/2.7/site-packages/textblob/translate.py", line 59, in translate
self._validate_translation(source, result)
File "/Library/Python/2.7/site-packages/textblob/translate.py", line 81, in _validate_translation
raise NotTranslated('Translation API returned and empty response.')
NotTranslated: Translation API returned and empty response. |
Le code Python en lui-même, est ci-dessous :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
## HYDRA ##
from Tkinter import *
import random
from textblob import TextBlob
from gtts import gTTS
import os
import speech_recognition as sr
# Fenetre principale
fenetre = Tk()
fenetre.title('Hydra App 1.1')
# Titre
titre = Label(fenetre, fg="red", bg="white", text="HYDRA", font = "impact 72")
titre.pack()
# Zone commande
zonetexte = Text(fenetre, width="90", height="33")
zonetexte.pack()
text_fr = ""
def hydra():
global text_fr
r = sr.Recognizer()
with sr.Microphone() as source:
zonetexte.insert(INSERT, "Veuillez parler\n")
audio = r.listen(source)
try:
text_fr = r.recognize_google(audio, language='fr')
zonetexte.insert(INSERT, "Votre phrase : \n" + text_fr)
except sr.UnknownValueError:
zonetexte.insert(INSERT, "Erreur voix\n")
except sr.RequestError as e:
zonetexte.insert(INSERT, "Pas INTERNET; {0}".format(e))
zonetexte.insert(INSERT, "\n")
fr_blob = TextBlob(text_fr)
en_blob = fr_blob.translate(from_lang='fr', to='en')
text_en = str(en_blob)
zonetexte.insert(INSERT, "Traduction : " + text_en)
zonetexte.insert(INSERT, "\n")
tts = gTTS(text=text_en, lang='en')
tts.save('/tmp/test_hydra.mp3')
os.system('mpg321 /tmp/test_hydra.mp3 -quiet')
os.remove('/tmp/test_hydra.mp3')
# Bouton TRADUIRE
BoutonGo = Button(fenetre, text ='Traduire', command = hydra)
BoutonGo.pack(side = LEFT, padx = 10, pady = 10)
# Bouton QUITTER
BoutonQuitter = Button(fenetre, text ='Quitter', command = fenetre.destroy)
BoutonQuitter.pack(side = LEFT, padx = 5, pady = 5)
fenetre.mainloop() |
Si vous pouviez m'aider, ça serait super :mrgreen:
Merci !!