我在python中做了一个虚拟助手原型的东西,我希望它在被提问时回复特定的行。
例如:当我说“嘿电脑,我叫什么名字”时,它会回复“你叫鲍勃,你真棒”
知道怎么做,我试着写一些东西,但没有用
第 90 - 92 和 105 - 107 行是需要帮助的
# coding=utf-8
import speech_recognition as sr
import os
from gtts import gTTS
import datetime
import warnings
import calendar
import random
import wikipedia
warnings.filterwarnings('ignore')
def recordAudio():
r = sr.Recognizer()
with sr.Microphone() as source:
print ('Say Something!')
audio = r.listen(source)
data = ''
try:
data = r.recognize_google(audio)
print('You said: '+data)
except sr.UnknownValueError:
print('Google Speech Recognition could not understand the audio, unknown error')
except sr.RequestError as e:
print('Request result from Google Speech Recognition service error '+ e)
return data
def assistanceResponse(text):
print(text)
myObj = gTTS(text= text, lang='en', slow=False)
myObj.save('assistant_response.mp3')
os.system('start assistant_response.mp3')
def wakeWord(text):
WAKE_WORDS = ['hey computer', 'ok computer']
text = text.lower()
for phrase in WAKE_WORDS:
if phrase in text:
return True
return False
def bob(text):
print('hi, my name is bob')
while True:
text = recordAudio()
response = ''
if (wakeWord(text) == True):
response = response + greeting(text)
if ('bob' in text):
bobby = bob()
response = response + bobby
assistanceResponse(response)