Python 未检测到现有模块

Posted

技术标签:

【中文标题】Python 未检测到现有模块【英文标题】:Python not detecting existing modules 【发布时间】:2021-08-20 01:33:58 【问题描述】:

尝试在 Kali Linux 上运行 .py 文件,使用:

`sudo python2 test.py`

我收到错误消息:

Traceback (most recent call last):
  File "main.py", line 5, in <module>
    import selenium
ImportError: No module named selenium

问题是已经安装了 selenium,当要求 pip 安装 selenium 时,会显示此错误消息:

sudo pip3 install selenium     

我收到这条消息:

Requirement already satisfied: selenium in /usr/lib/python3/dist-packages (4.0.0a1)

我该怎么办?我猜它与pip2有关,但我无法安装它。请帮我。 这是文件的代码:

import sys 
import datetime 
import selenium import requests 
import time as t from sys 
import stdout from selenium 
import webdriver from optparse 
import OptionParser

【问题讨论】:

您正在尝试使用 Python 2 运行该文件,但您使用 pip3 安装了 Selenium。 只需创建一个虚拟环境,安装所需的包并在那里执行程序。 pip3 用于 python3,你用 python2 运行 【参考方案1】:

您的系统上有多个不同版本的 python。您正在运行的文件使用 python2 解释器。 pip3python3 的包管理器。

如果您想查看所有已安装的 python 版本,您可以运行 ls /usr/bin/python*(只需忽略 python-configpythonw 目录)。要在 python2 上安装 selenium,您需要使用 pip 而不是 pip3。或者,您可以尝试使用 python3 运行该文件,因为它看起来没有任何可能导致 python3 失败的 python2 打印语句、xrange 等。

【讨论】:

我应该使用哪个命令来安装 pip2? 尝试运行pip -V。如果它最后给​​你(python 2.x),那么使用pip install selenium。如果没有,那么您将不得不做更多的挖掘工作 我在绑定仅从 pip 获取硒时遇到了同样的错误。 有什么阻止你使用 python3 运行文件吗? print '------------------------' ^ SyntaxError: 调用'print'时缺少括号。你是说 print('------------------------') 吗?

以上是关于Python 未检测到现有模块的主要内容,如果未能解决你的问题,请参考以下文章

尽管已安装 Python 模块,但未检测到它们

BeautifulSoup 模块未检测到任何标签

Visual Studio 2013 中的 MSM 合并模块:未检测到依赖关系

Spring Boot 单元测试未检测到自动装配组件的模块

Eclipselink 未检测到脏实体

顺序搜索:未检测到输入长度 Python