Comment faire parler son ordinateur à l’aide Python ? C’est bien connu, tout le monde aime que son ordinateur parle… (ou pas !).
Je trouve amusants les résultats que l’on peut obtenir.
Faire parler son ordinateur à l’aide de Python en utilisant Dispatch (windows) du module win32com.client
from win32com.client import Dispatch Dispatch("SAPI.SpVoice").Speak("Hello everybody. How are you today ? Me, i'm doing very well.")
Bon, là, on dirait moi quand je parle anglais…
from win32com.client import Dispatch Dispatch("SAPI.SpVoice").Speak("C'est une assez bonne semaine je trouve.")
Sous MacOS
import os os.system("say 'Je suis trop pauvre pour avoir un Apple.'")
N’ayant pas MacOS (je ne suis pas assez riche pour avoir un Apple…), je ne peux malheureusement pas vous donner le résultat.
Faire parler son ordinateur avec le module gtts de Python
Pour installer le module gtts :
>>> pip install gtts
from gtts import gTTS import os tts = gTTS(text="Hello everybody. How are you today ?", lang='en') tts.save("english.mp3") os.system("start english.mp3")
Là, c’est quand-même un peu mieux non ?
L’avantage de ce module est de pouvoir préciser la langue (ici, english).
tts = gTTS(text="C'est une assez bonne semaine je trouve.", lang='fr') tts.save("french.mp3") os.system("start french.mp3")
On ne va pas se mentir: en français, c’est un peu trop robotisé… Mais bon! ça passe !
L’inconvénient de ce module est, vous l’aurez vu, la génération d’un fichier mp3 pour le lire après… Donc pas tip-top-moumoute quand on souhaite faire parler un logiciel sur une action ! Comme pour, par exemple, ce genre de dialogue:
Avec le module pyttsx3
Pour installer le module pyttsx3 :
>>> pip install pyttsx3
import pyttsx3 engine = pyttsx3.init() engine.say("Sac à merde. Je sais que tu te tapes ma femme. Je ne vais donc pas prévoir de catégorie Mathématiques à mes récompenses. Signé : Monsieur Nobel.") engine.runAndWait()
Si vous êtes élèves de NSI, n’oubliez pas que j’ai écrit deux ouvrages pour vous aider : voir cette page.
Vous pouvez aussi consulter les ressources concernant Python.