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

NMAP模块无PortScanner()属性报错,重装python-nmap无效如何解决?

针对nmap has no attribute PortScanner()报错的解决方案

首先先回滚之前的错误操作:将你移动到python_nmap-0.6.4.egg-info文件夹内的nmap.py文件移回原路径/home/kali/.local/lib/python3.9/site-packages/nmap/,egg-info为Python包的元数据存储目录,存放功能代码不会被解释器识别加载。

之后按以下步骤逐一排查:

  • 排查同名文件冲突
    检查你编写的扫描脚本文件名是否为nmap.py,或脚本运行的当前工作目录下是否存在nmap.py文件、nmap命名的文件夹,若存在请重命名为其他不冲突的名称,同时删除同目录下生成的__pycache__缓存文件夹。Python导入模块时会优先读取当前工作目录下的同名文件,会覆盖你安装的第三方python-nmap库。
  • 清理残留旧版本文件
    直接删除无实际模块代码的python_nmap-0.6.3.egg-info文件夹,避免跨版本元数据冲突导致的导入异常。
  • 验证模块导入路径匹配
    执行以下代码确认当前Python解释器的搜索路径包含python-nmap的安装路径:
    import sys
    print(sys.path)
    
    检查输出列表中是否包含/home/kali/.local/lib/python3.9/site-packages,如果没有可以先临时添加路径测试导入:
    import sys
    sys.path.append("/home/kali/.local/lib/python3.9/site-packages")
    from nmap import PortScanner
    
    若此时导入正常,可将该路径添加到系统PYTHONPATH环境变量中永久生效。
  • 调整导入语法
    若以上操作完成后仍报错,可以直接指定到类所在的模块层级导入,代码示例:
    from nmap.nmap import PortScanner
    scanner = PortScanner()
    

内容的提问来源于stack exchange,提问作者Potato-man

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 06:54:04