You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已安装适配Python3.7的PyAudio-0.2.11仍触发AttributeError:找不到PyAudio问题求助

排查PyAudio安装后仍触发AttributeError的问题

我之前也碰到过一模一样的情况——明明下载了对应Python版本的PyAudio包,结果SpeechRecognition就是不认它。结合你的场景,咱们一步步来定位问题:

首先,先确认PyAudio是否真的安装到了你正在使用的Python环境里:

  • 打开命令提示符,先运行 python --version,确认输出和你给出的版本信息完全匹配(3.7.0 64位)。很多人会同时装多个Python版本,很容易把包误装到其他环境里。
  • 接着运行 pip list,查看输出里有没有PyAudio且版本为0.2.11。如果用了虚拟环境,一定要先激活虚拟环境再执行这两步。

然后,检查安装方式是否正确:
你下载的whl包版本是对的,但必须用pip来安装才生效。如果之前是双击或者用其他方式尝试安装,大概率没装到位。切换到whl包所在的文件夹,重新运行这个命令试试:

pip install PyAudio-0.2.11-cp37-cp37m-win_amd64.whl

接下来,测试PyAudio本身是否能正常导入:
先绕过SpeechRecognition,写一段极简代码直接测试PyAudio:

import pyaudio
p = pyaudio.PyAudio()
print(f"PyAudio版本: {p.get_version()}")

如果这段代码报错,说明PyAudio的安装本身有问题;如果能正常输出版本信息,那就是SpeechRecognition的兼容性问题,试试更新它:

pip install --upgrade SpeechRecognition

还有两种小概率情况可以排查:

  • 系统权限问题:用管理员权限打开命令提示符,重新安装PyAudio和SpeechRecognition,Windows的权限限制有时候会导致包安装不完整。
  • 模块路径问题:运行下面的命令,查看PyAudio的模块路径是否在当前Python的site-packages目录下:
python -c "import pyaudio; print(pyaudio.__file__)"

如果提示找不到模块,说明PyAudio根本没装到正确的路径里,需要重新检查安装环境。

你提供的代码和版本信息如下:

运行的代码:

def get_audio(): 
    r = sr.Recognizer() 
    with sr.Microphone() as source: 
        audio = r.listen(source) 
    said = "" 
    try: 
        said = r.recognize_google(audio) 
    except Exception as e: 
        print("Exception:", str(e)) 
    return said.lower()

Python版本信息:Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32

按上面的步骤排查下来,应该能找到问题根源。

内容的提问来源于stack exchange,提问作者yyyyyy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 11:27:37