我正在尝试使用Python 3.5.1的语音识别模块来让我的jarvis AI语音激活!我查看了堆栈溢出,发现了一些与我类似的问题,但他们没有我需要的答案,我需要一个针对此问题的个性化答案。我已经下载了所有必需的软件包,但仍然没有成功,我收到此错误:
ImportError: No module named 'speech_recognition'
如果我跑步:
python -m speech_recognition
在终端中,它仅在终端中运行,我可以与它交谈,它几乎不准确,但它能听到我的声音,并且可以解释一些单词。我已从该网站的说明下载了终端中的所有软件包。
https://pypi.python.org/pypi/SpeechRecognition/
当我在 IDLE 中运行代码时,我的代码收到上面显示的错误。我使用的是运行 macOS Sierra 10.12.2 的 iMac, 如果有人有答案会很有帮助。 谢谢!
这是我的代码:
import speech_recognition
import pyttsx
speech_engine = pyttsx.init('sapi5') # see
speech_engine.setProperty('rate', 150)
def speak(text):
speech_engine.say(text)
speech_engine.runAndWait()
recognizer = speech_recognition.Recognizer()
def listen():
with speech_recognition.Microphone() as source:
recognizer.adjust_for_ambient_noise(source)
audio = recognizer.listen(source)
try:
return recognizer.recognize_sphinx(audio)
# or: return recognizer.recognize_google(audio)
except speech_recognition.UnknownValueError:
print("Could not understand audio")
except speech_recognition.RequestError as e:
print("Recog Error; {0}".format(e))
return ""
speak("Say something!")
speak("I heard you say " + listen())
使用
安装语音识别pip install SpeechRecognition
我在 mac 中将 python 升级到 3.7,但随后我遇到了类似的问题。
pip3 安装语音识别
这对我有用
在 python 3.7 32 位的 Windows 命令提示符下尝试此操作
python -m pip install -U pip
pip install winspeech
pip install SpeechRecognition
OS X Sierra 附带 Python 2.7.10。由于您使用的是 Python 3.5.1,因此您可能自己安装了它,并且现在有两个版本的 Python。 IDLE 显然正在使用您未安装 speech_recognition
模块的 Python 版本运行。
做什么取决于您的设置。我首先从命令行运行
idle3
,而不是
idle
。如果您的模块是为 Python 3 安装的,那么这就是您所需要的。如果这不起作用,请检查所有内容并关注不同版本,并按照您想要的方式整理它们。
在 Unix 开发模式下安装 Xcode。 安装 Xcode - 命令行工具(在终端中键入“Xcode-select —install”)
**
Install Port or Brew (port [or] Brew )
sudo brew install portaudio [or] sudo port install portaudio (for loading mic drivers)
sudo pip install pyaudio [or] sudo easy_install install pyaudio (Mic Sources)
sudo pip install SpeechRecognition [or] sudo easy_install install SpeechRecognition
sudo port install FLAC.
**
随后
pip 安装 PyAudio-0.2.11-cp39-cp39-win_amd64.whl再次。
sudo pip install --upgrade pip
它会起作用的。