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

Python3.8.0 x64环境下import pyHook报ModuleNotFoundError求助

解决Python3.8 x64下import pyHook报ModuleNotFoundError的问题

你踩了几个容易忽略的小坑,我来帮你一步步理清并解决:

  • 核心误区:pyHook在Python3.8+的64位系统上已被pyWinhook替代,且导入名称不同
    你已经成功安装了pyWinhook,但代码里仍然用import pyHook,这是导致报错的关键原因!

下面是具体的修复步骤:

  1. 核对Python环境一致性
    先打开CMD,执行以下命令确认你的运行环境和pip安装环境是同一个:

    python --version
    pip --version
    

    确保两者都显示Python 3.8.0 (amd64)。如果pip对应的是其他Python版本(比如32位或另一个版本),会导致安装的包不在当前运行的Python环境中,此时可以用Python的绝对路径调用pip,比如C:\Python38\Scripts\pip.exe install ...(替换成你自己的Python38 x64安装路径)。

  2. 修正代码中的导入语句
    把代码开头的import pyHook改成:

    import pyWinhook
    

    pyWinhook是pyHook的官方替代包,API基本兼容,但包名不同,这是很多人容易踩的坑。

  3. 重新安装pyWinhook(清理可能的损坏安装)
    如果之前的安装存在损坏或残留,先卸载再重装:

    pip uninstall -y pyWinhook
    pip install pyWinhook-1.6.1-cp38-cp38-win_amd64.whl
    

    注意要确保whl文件在当前CMD的工作目录下,或者使用完整路径指定文件位置。

  4. 尝试干净的虚拟环境
    如果全局环境存在包冲突,创建虚拟环境来隔离测试:

    # 创建虚拟环境
    python -m venv pyhook_venv
    # 激活虚拟环境
    pyhook_venv\Scripts\activate
    # 在虚拟环境中安装pyWinhook
    pip install pyWinhook-1.6.1-cp38-cp38-win_amd64.whl
    

    激活环境后运行你的代码,看是否能正常导入。

  5. 放弃32位pyHook的尝试
    64位系统不需要安装32位的pyHook,反而会因为位数不匹配导致无法导入,而且pyHook本身不支持Python3.8,这个方向完全没必要继续尝试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 07:53:17