Python 这个代码有什么问题?它没有显示任何错误,但也没有显示任何输出
我正在尝试一个语音到文本的程序。我已经写了这段代码,但它没有显示任何输出,也没有显示任何错误。不是在读我的演讲。找不到任何解决办法。请帮忙Python 这个代码有什么问题?它没有显示任何错误,但也没有显示任何输出,python,speech-recognition,Python,Speech Recognition,我正在尝试一个语音到文本的程序。我已经写了这段代码,但它没有显示任何输出,也没有显示任何错误。不是在读我的演讲。找不到任何解决办法。请帮忙 import speech_recognition as sr import webbrowser as wb r1 = sr.Recognizer() r2 = sr.Recognizer() with sr.Microphone() as source: print('Say Hello') print('Speak') audio = r2.
import speech_recognition as sr
import webbrowser as wb
r1 = sr.Recognizer()
r2 = sr.Recognizer()
with sr.Microphone() as source:
print('Say Hello')
print('Speak')
audio = r2.listen(source)
if 'Hello' in r1.recognize_google(audio):
r1 = sr.Recognizer()
url = 'https://www.google.com/'
with sr.Microphone() as source:
print('search')
audio = r1.listen(source)
try:
get = r1.recognize_google(audio)
print(get)
wb.get().open_new(url + get)
except sr.UnknownValueError:
print('Not recognised')
except sr.RequestError as e:
print('try again'.format(e))
在我冒着结婚的危险,在我的电脑前反复地、恼人地喊“你好”之后,捕获的音频看起来总是小写的:
Say Hello
Speak
> /Users/matt/repos/stackoverflow/test.py(16)<module>()
-> if 'Hello' in audio_result:
(Pdb) l
11
12 audio_result = r1.recognize_google(audio)
13 import pdb; pdb.set_trace()
14
15
16 -> if 'Hello' in audio_result:
17
18 r1 = sr.Recognizer()
19 url = 'https://www.google.com/'
20 with sr.Microphone() as source:
21 print('search')
(Pdb) audio_result
'hello hello hello hello hello hello hello hello hello hello hello hello hello hello'
(Pdb) 'Hello' in audio_result
False
(Pdb) 'hello' in audio_result
True
打招呼
通话
>/Users/matt/repos/stackoverflow/test.py(16)()
->如果音频_结果中出现“Hello”:
(Pdb)l
11
12音频结果=r1。识别谷歌(音频)
13进口pdb;pdb.set_trace()
14
15
16->如果音频结果中出现“Hello”:
17
18 r1=高级识别器()
19网址:https://www.google.com/'
20以高级话筒()为声源:
21打印('搜索')
(Pdb)音频输出结果
“你好你好你好你好你好”
(Pdb)音频结果中的“你好”
假的
(Pdb)音频结果中的“你好”
真的
所以很明显,'Hello'
应该是'Hello'
在切换和重试后,我的浏览器打开到url,但该url没有解析,但我认为这将使您更进一步
HTH.程序是否终止?我能看到该程序不产生输出的唯一方法是
识别器
或麦克风
不返回。如果不知道其中任何一个是什么,就很难说问题出在哪里。您所有的打印语句都在中,使用sr.microscope()作为源上下文管理器,这实际上可能不会起任何作用。我会试着直接内省sr.micromic()
,看看它的状态。这也是一个简单的测试,但试着让第一行变成print
语句,以确认这里没有更根本的错误。。。