如何解决如何在python中使用gTTS获取自定义响应
我用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)
解决方法
在第 90 行,您使用输入的变量文本调用 Bob 函数。但是稍后当您尝试调用该函数时,您不会将文本变量输入其中。不确定这是否是问题所在。我还使用python和bash(ubuntu)制作了一个虚拟助手。如果你想要我的代码,我愿意分享它,只是在下面评论。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。