如何解决pip安装报错ModuleNotFoundError: No module named ‘websockets’问题

【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named 'websockets'问题

摘要

在日常Python开发中,使用 pip install 安装依赖包是最常见的操作之一。但不少同学在 PyCharm控制台 或命令行执行 pip install websockets 后,依然在运行项目时报错:

ModuleNotFoundError: No module named 'websockets'

本文将从 环境配置、常见场景、版本冲突、路径设置、pip源问题 等多个角度,逐步分析并给出详细解决方案。

文章目录

  • [【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named 'websockets'问题](#【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named ‘websockets’问题)

一、开发环境说明

在复现问题的过程中,开发环境如下:

  • 操作系统:macOS Sonoma
  • Python版本:Python 3.11
  • IDE:PyCharm 2025 专业版
  • 包管理器:pip 24.x

这些环境并不会直接导致错误,但结合项目配置可能会触发 ModuleNotFoundError


二、常见错误场景复盘

在 PyCharm 中执行:

bash 复制代码
pip install websockets

安装日志显示成功,但运行 import websockets 时依然报错。这往往意味着:

  1. 包未被安装到当前解释器的环境中。
  2. 虽然安装了,但导入路径错了。
  3. pip、环境或包版本存在冲突。

三、错误原因与解决方案详解

1. 模块未安装或包名错误

很多同学输入命令时拼写错误,例如:

bash 复制代码
pip install websocket   # ❌ 错误
pip install websockets  # ✅ 正确

解决方法 :确认 pip list 中存在 websockets 包。


2. pip 版本过旧

部分老版本 pip 与新版 PyPI 协议不兼容,可能导致安装成功但不可用。

bash 复制代码
pip install --upgrade pip

3. 网络问题(国内用户常见)

国内环境下可能因为网络原因导致包下载不全。

解决方案:切换国内源(例如清华镜像):

bash 复制代码
pip install websockets -i https://pypi.tuna.tsinghua.edu.cn/simple

4. 环境与解释器不一致

PyCharm中可能启用了多个 Python 解释器。

检查路径:
PyCharm -> Preferences -> Project Interpreter

确认解释器与执行 pip install 的环境一致。


5. 忘记 import 或导错包

python 复制代码
# 错误示例
import websocket   # ❌

# 正确示例
import websockets  # ✅

6. 缺少 __init__.py 文件

如果是自己封装的模块目录,没有 __init__.py 会导致 Python 不能识别为 package。

bash 复制代码
touch __init__.py

7. 包版本不兼容

某些依赖库要求特定版本。例如 FastAPI 需要 websockets ≥ 10.0。

bash 复制代码
pip install websockets==11.0.3

8. 自定义包名冲突

如果你在项目目录中创建了一个叫 websockets.py 的文件,会覆盖掉系统安装的库。

解决方法:避免与第三方库同名。


9. PYTHONPATH 未设置

如果安装的路径不在 PYTHONPATH 下,运行时会找不到模块。

bash 复制代码
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python3.11/site-packages

10. 相对导入错误

python 复制代码
# ❌ 错误
from . import websockets

# ✅ 正确
import websockets


四、解决流程可视化

成功 报错 正确 仍报错 最终解决 执行 pip install websockets import websockets 成功 检查拼写是否正确 检查解释器和环境一致性 升级pip / 切换国内源 / 检查PYTHONPATH


五、常见问题对照表

问题现象 可能原因 解决方法
安装成功但仍报错 环境不一致 确认PyCharm解释器
No module named websockets 包名拼写错误 使用 pip install websockets
下载缓慢或失败 网络问题 切换清华源或阿里源
导入时冲突 自定义包名相同 重命名自定义模块
安装后无法调用 pip版本旧 pip install --upgrade pip
项目结构问题 缺少 __init__.py 添加该文件

六、总结与扩展思路

通过上面的分析,可以看到 ModuleNotFoundError 不一定真的是"没有安装",而可能是 路径、解释器、网络、版本冲突 等导致的。

利他提醒 :如果你在开发中遇到更多 Python、PyCharm、pip 等相关Bug,可以参考 ==> 全栈Bug解决方案专栏 https://blog.csdn.net/lyzybbs/category_12988910.html

这样不仅能解决单个问题,也能提升整体开发排错能力。 🚀


相关推荐
ljh5746491191 天前
PhpStorm 2022.3 版本中,修改使用 Git 提交时看到弹出式的对话框模式
ide·git·php·phpstorm
前端无涯1 天前
Trae的使用
前端·ide·trae
3824278271 天前
Visual Studio 2022 模板的使用方法
ide·visual studio
王大傻09281 天前
Series的属性简介
python·pandas
牢七1 天前
2582828
beautifulsoup
钱彬 (Qian Bin)1 天前
项目实践11—全球证件智能识别系统(切换为PostgreSQL数据库)
人工智能·qt·fastapi
qq_418247881 天前
恒源云/autodl与pycharm远程连接
ide·人工智能·python·神经网络·机器学习·pycharm·图论
chushiyunen1 天前
javadoc规范、idea生成javadoc等
java·ide
JPX-NO1 天前
windows下编程IDE使用docker搭建的rust开发环境(Linux)
ide·windows·docker·rust
最幸伏的人1 天前
Pycharm2025.3版本使用UV搭建项目
python·pycharm·uv