Python IDLE中出现ImportError: No module named 'speech_recognition'错误。

13

我正在尝试使用Python 3.5.1中的语音识别模块,使我的Jarvis AI能够实现语音激活!我在Stack Overflow上查找了一些类似于我的问题,但它们没有我需要的答案,我需要一个为此个性化定制的答案。我已经下载了所有必要的包,但运行时出现错误:

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())

IDLE是否运行与您从终端启动Python时运行的相同版本的Python? - TigerhawkT3
没有错,那我该怎么修复呢? - Sergei Glimis
12个回答

23

使用以下命令安装语音识别:

pip install SpeechRecognition


5

我在 Mac 上将 Python 升级到 3.7,但仍然遇到了类似的问题。

运行命令 "pip3 install SpeechRecognition"

这个命令对我起到了作用。


2

在 Windows 命令提示符中尝试使用 Python 3.7 32 位版本:

python -m pip install -U pip

pip install winspeech

pip install SpeechRecognition

1

OS X Sierra 自带 Python 2.7.10。由于您正在使用 Python 3.5.1,因此您可能已经自行安装了它,并且现在有两个版本的 Python。IDLE 明显是使用您未安装 speech_recognition 模块的 Python 版本运行的。

要做什么取决于您的设置。我建议从命令行中运行 idle3 而不是 idle。如果您的模块已安装到 Python 3,则只需这样做即可。如果这不起作用,请检查所有内容以查看不同版本并将其整理为您想要的方式。


1
我找到解决方法了,我在终端中写入:python3 -m speech_recognition。 - Sergei Glimis
1
我现在可以使用pip3安装它吗?我尝试了一下,但是它说:“您正在使用pip版本7.1.2,但版本9.0.1可用。您应该考虑通过'pip install --upgrade pip'命令进行升级。”所以我更新了,然后它说:“要求已经是最新的:pip / Library / Python / 2.7 / site-packages / pip-9.0.1-py2.7.egg”。 - Sergei Glimis
谢谢,您已经诊断出了问题,但我该如何解决它? - Sergei Glimis
好的,但当我输入(python3 -m speech_recognition)时,它会显示错误:/ Library / Frameworks / Python.framework / Versions / 3.5 / bin / python3:没有名为speech_recognition的模块。如果我运行(pip3 install SpeechRecognition)来下载Python 3的语音识别模块,它会给我一个错误:(错误:无法创建'/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/speech_recognition':权限被拒绝)你正在使用pip版本7.1.2,但版本9.0.1可用。 您应该考虑通过“pip install -upgrade pip”命令升级。 - Sergei Glimis
好的,谢谢Alexis,我会记住的,并且我会问另一个问题。 - Sergei Glimis
显示剩余7条评论

1

对于 Python3,请尝试运行以下命令来安装 SpeechRecognition 模块: pip3 install SpeechRecognition


这并没有回答问题。一旦您拥有足够的声望,您将能够评论任何帖子;相反,提供不需要询问者澄清的答案。- 来自审核 - hide1nbush

1

enter image description here

试一下,它会起作用的!我曾经遇到过同样的问题。

 pip install SpeechRecognition

0

我解决了这个问题。 我只是在项目属性中安装了SpeechRecognition。 设置 -> 项目:(你的项目名称)- > Python: 解释器。 点击加号并找到SpeechRecognition,安装它。


你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心中找到有关如何编写良好答案的更多信息。 - Community

0
在 PyCharm 中,当你选中一个包时,按下提示快捷键(alt+enter),然后点击安装包或按 F2 跳转到包所在位置。

0
在我的情况下,错误是 - 没有找到 speechRecognition 模块。如果你也遇到了这个问题,请尝试编辑导入代码并使用 import speech_recognition as sr。这对我有用。有时候 pip 会出现这些问题。

0

首先,请确保您拥有“要求”中列出的所有要求:

在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.

**


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接