解决PyCharm中Jupyter Notebook端口被占用问题

沈亦白
沈亦白
发布时间:2026-10-11 | 1人浏览过
原创

在PyCharm中运行Jupyter Notebook时,若未正常关闭进程,再次启动常会提示端口被占用(默认8888)。本文介绍两种解决方法:通过任务管理器结束进程,或使用命令行工具(netstat、taskkill)精准定位并强制终止占用端口的后台进程,确保开发环境顺利启动。

问题现象

Jupyter Notebook 默认监听端口通常为 8888。如果在 PyCharm 中运行 Notebook 后未通过正常方式关闭,直接再次点击运行,系统会抛出错误:the notebook server could not be started because no available port。这意味着旧的进程仍在后台占用着端口。

解决方法一:使用任务管理器

这是最直观的方法。打开 Windows 任务管理器,在“进程”或“详细信息”选项卡中查找名为 python.exe 的进程。选中该进程并点击“结束任务”,释放被占用的端口后,即可重新在 PyCharm 中启动 Notebook。

解决方法二:使用命令行精准清理

如果任务管理器中进程较多,或者希望更精准地定位,可以使用 Windows 命令提示符(CMD)进行排查和清理。整个过程分为三步:查找端口、定位进程、强制结束。

1. 查找占用端口的进程ID (PID)

首先,我们需要确认是哪个进程占用了 8888 端口。在 CMD 中执行以下命令:

netstat -aon | findstr "8888"

该命令的作用如下:

  • netstat:用于显示协议统计数据和当前的 TCP/IP 网络连接。
  • -aon:参数 -a 显示所有连接,-o 显示拥有的进程 ID (PID),-n 以数字形式显示地址和端口号。
  • findstr "8888":过滤出包含端口号 8888 的行。

命令输出的最后一列即为占用该端口的进程 ID(PID),例如 3128 或 3780。

2. 确认进程名称(可选)

为了确认该 PID 对应的具体程序,可以执行:

tasklist | findstr "3128"

这里 tasklist 用于显示本地或远程计算机上的所有任务列表,findstr 用于查找指定字符串(类似 Linux 下的 grep)。

3. 强制结束进程

确认 PID 无误后,使用 taskkill 命令结束该进程。在 CMD 中执行:

taskkill /PID "3128"

参数说明:

  • /PID:指定要终止的进程的进程 ID。
  • /f(可选):指定强制终止进程。如果进程不响应常规终止请求,建议加上此参数。
  • /t(可选):指定终止与父进程一起启动的所有子进程。

执行成功后,端口被释放,即可在 PyCharm 中重新启动 Jupyter Notebook。

以上就是解决PyCharm中Jupyter Notebook端口被占用问题的详细内容,更多关于PyCharm开发环境配置的资料请关注本站其它相关文章!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表