Mac OS下pip3安装selenium后仍提示No module named 'selenium'的问题求解
问题解析与验证:多Python实例导致的Selenium导入失败
你的猜测完全正确!这个问题的核心就是Mac OS系统中多个Python实例共存,导致包安装环境和运行环境不一致,下面帮你拆解细节并验证:
问题根源
Mac默认自带Python 2.x,而你通过brew安装了Python 3.7,同时系统可能还存在其他渠道安装的Python 3版本(比如系统更新后自带的Python 3),这就造成了:
- 你执行
pip3 install selenium时,调用的是brew安装的Python 3.7对应的pip,所以把Selenium装在了/usr/local/lib/python3.7/site-packages - 但你运行
import selenium时,实际调用的是另一个Python 3实例(路径优先级更高的那个),这个实例的site-packages目录里并没有Selenium,因此触发ModuleNotFoundError
你的解决操作为什么生效
你做的两步操作精准命中了问题核心:
brew link --overwrite python:强制让brew安装的Python成为系统默认调用的版本,统一了系统中Python的路径优先级,确保你运行python3时调用的是brew的版本- 修改
/usr/local/bin/pip中的路径:把指定的Python版本从python3.7改成python3,让pip和当前默认的Python解释器完全绑定,后续安装的包都会进入正确的site-packages目录
额外验证小技巧
如果想彻底确认环境已经统一,可以执行以下命令检查:
- 查看默认Python路径:
which python3,正常应返回/usr/local/bin/python3(brew安装的路径) - 查看pip对应的Python版本:
pip3 -V,输出里的Python路径要和上面的结果一致 - 查看Selenium的安装位置:
pip3 show selenium,输出的Location应该是当前默认Python的site-packages目录
内容的提问来源于stack exchange,提问作者YuanL




