【问题标题】:ImportError: No module named 'speech_recognition' in python IDLEImportError:python IDLE 中没有名为“speech_recognition”的模块
【发布时间】:2017-06-07 11:10:00
【问题描述】:

我正在尝试使用 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())

【问题讨论】:

  • IDLE 运行的 Python 版本是否与从终端启动 Python 时运行的 Python 版本相同?
  • 没有你的权利,我该如何解决?

标签: python module speech-recognition speech-to-text


【解决方案1】:

对我有用的是,我再次安装了 jupyter notebooks 并在 anaconda 提示符下,然后我执行了 pip install SpeechRecognition

紧随其后

点安装 PyAudio-0.2.11-cp39-cp39-win_amd64.whl

再次。

【讨论】:

  • OP 声明他正在使用 macOS,所以你安装 win_amd64 轮的建议令人费解。
  • 我的错。他宁可安装——brew install portaudio,然后是python3 -m pip install pyaudio
【解决方案2】:

在可能的情况下,错误是 - 没有名为 SpeechRecognition 的模块 如果您遇到这种情况,请尝试编辑导入代码并使用 将语音识别导入为 sr 它对我有用。有时 pip 会出现这些问题

【讨论】:

    【解决方案3】:

    我在 mac 中将我的 python 升级到 3.7,但后来我遇到了类似的问题。

    pip3 安装语音识别

    这对我有用

    【讨论】:

      【解决方案4】:

      试试这个它会工作!我也遇到过同样的问题。

       pip install SpeechRecognition
      

      【讨论】:

        【解决方案5】:

        在 python 3.7 32 位的 windows 命令提示符下试试这个

        python -m pip install -U pip
        
        pip install winspeech
        
        pip install SpeechRecognition
        

        【讨论】:

          【解决方案6】:

          使用安装语音识别

          pip install SpeechRecognition

          【讨论】:

            【解决方案7】:

            用户必须是root 所以用

            sudo pip install --upgrade pip
            

            它会起作用的。

            【讨论】:

              【解决方案8】:

              OS X Sierra comes with Python 2.7.10。由于您使用的是 Python 3.5.1,因此您可能自己安装了它,并且您现在有两个版本的 Python。 IDLE 显然正在运行您没有为其安装speech_recognition 模块的 Python 版本。

              具体操作取决于您的设置。我首先从命令行运行idle3,而不是idle。如果您的模块是为 Python 3 安装的,那么这就是您所需要的。如果这不起作用,请仔细检查所有内容,注意不同的版本,并按照您想要的方式整理它们。

              【讨论】:

              • 等待我如何在终端中运行 IDLE 3?
              • 我想通了我写了:python3 -m speech_recognition in terminal
              • 我不能将 python 降级到 2.7.10 我该怎么办?
              • 我现在可以使用 pip3 安装它吗,我试过了,它说您使用的是 pip 版本 7.1.2,但是版本 9.0.1 可用。您应该考虑通过“pip install --upgrade pip”命令进行升级。所以我更新然后它说要求已经是最新的:pip in /Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg
              • 谢谢,您已经诊断出问题,但我该如何解决?
              猜你喜欢
              • 1970-01-01
              • 2018-07-30
              • 2022-08-15
              • 2017-11-09
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-05-23
              • 2020-12-06
              相关资源
              最近更新 更多