我正在使用python' Speach Recognition而我的代码正在给我一个AttributeError
:
import os
import pyaudio
import speech_recognition as sr
def excel():
os.system("start excel.exe")
def internet():
os.system("start chrome.exe")
def media():
os.system("start wmplayer.exe")
def mainfunction(source):
audio = r.listen(source)
user = r.recognize_google(audio)
print(user)
if user == "Excel":
excel()
elif user == "Internet":
internet()
elif user == "music":
media()
if __name__ == "__main__":
r = sr.Recognizer() #this is the line that fails
with sr.Microphone() as source:
while 1:
mainfunction(source)
错误信息是:
AttributeError: 'module' object has no attribute 'Recognizer'
(test-dev-pro)➜ ~ python speech_recognition.py
Traceback (most recent call last):
File "speech_recognition.py", line 26, in <module>
r = sr.Recognizer()
AttributeError: 'module' object has no attribute 'Recognizer'
但我查看过的所有示例中都使用了Recognizer
,所以我不明白为什么会收到此错误。
答案 0 :(得分:3)
虽然这不是重复,但您遇到与此人相同的问题:Python "import random" Error
通过命名文件speach_recognition
,您最终导入自己的文件而不是库文件。要解决这个问题,只需更改文件的名称,就可以了! :)
编辑:请务必查看该问题的评论以及清理.pyc文件的信息。
答案 1 :(得分:0)
我认为您的源文件名是Speech_recognition.py,这与语音识别包中的方法冲突。因此,只需更改文件名。 如果发生另一个错误,例如
AttributeError: 'Recognizer' object has no attribute 'recognize
'
然后只需将Recognize()方法更改为google_recognize()
答案 2 :(得分:0)
Windows 用户可能会遇到pyaudio
我遇到的问题
pip install pipwin
安装后pipwin
pipwin install pyaudio
它会帮助你