繁体   English   中英

如何修复 Python ModuleNotFoundError

[英]How to fix Python ModuleNotFoundError

我已经安装了 netfilterqueue 几种方法,从 GitHub 克隆并通过 pip 安装。 在 python 3.7、3.8、3.9 上。 Netfilterqueue 仅安装在 3.6 和 3.7 上,尽管它需要一些时间。 在安装和测试 netfilterqueue 是否在交互模式下工作之后,我尝试运行我之前没有工作的程序。 它给了我一个 modulenotfound 错误。

ModuleNotFoundError:没有名为“netfilterqueue”的模块

我不知道我在做什么错 pip 告诉我它安装正确,但它在程序中不起作用。

编辑所以我没有使用 pycharm 或 anaconda 我主要在 VS Code 中编写代码。 但我什至还没有走到那一步。 我只是在终端中运行我的脚本,它无法从脚本中找到模块。 我已经安装了所有这些依赖项,当我运行该命令时,我得到了

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'python-dev-is-python2' instead of 'python-dev'
build-essential is already the newest version (12.8).
libnetfilter-queue-dev is already the newest version (1.0.3-1).
python-dev-is-python2 is already the newest version (2.7.18-8).
The following packages were automatically installed and are no longer required:
  libpython3-dev libpython3.9-dev python3.9-dev
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.

现在突然 pip3 install netfilterqueue for python 3.6 也不起作用。 我的系统上安装了 python 3.9 和 2.7,我正在使用 pyenv 管理我的 python 3.6 版本,以尝试运行需要 netfilterqueue 的脚本。

更新:所以我重新启动计算机并从新的 Kali live 开始,它与 Kali live 附带的 python 3.8.4 一起工作。 我不确定我做了什么来破坏我的安装。 我刚刚安装了它并安装了 KDE 和拿铁底座并更新了我认为这可能是由于我添加了一个测试 repo 但我不确定这可能是问题吗?

根据这个问题How do I install netfilterqueue for python3? 看起来 netfilterqueue 不适用于 python 3.7,但适用于 3.6,因此将整个环境调整为 3.6 版本,但是通过项目解释器在 anaconda 或 Z27584A7E225BC33F363269947

  1. 您还需要根据文档https://pypi.org/project/NetfilterQueue/和上一个问题中的第二个答案安装它

    sudo apt-get install build-essential python-dev libnetfilter-queue-dev
  2. 此外,如果您正在使用 anaconda jupyter 笔记本或蜘蛛,解释器很可能无法找到 package 的安装位置 解决此问题的最简单方法是使用 --user 标志重新安装。 默认情况下,Anaconda 将拉入您的用户包。 试试pip3 install netfilterqueue --user,然后看看能不能导入。

     pip3 uninstall netfilterqueue pip3 install netfilterqueue --user

请在这样做后重新启动您的 anaconda
有时问题出在安装工具上,您可以尝试重新安装它们

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM