已安装woocommerce模块仍报ModuleNotFoundError的原因排查
ModuleNotFoundError: No module named 'woocommerce' 问题原因分析
问题场景
通过Anaconda Navigator启动Jupyter Lab后,执行以下Python代码:
from woocommerce import API wcapi = API( url="http://domain", consumer_key="key", consumer_secret="secret", timeout=50 ) response = wcapi.delete('products/productID', param={'force', True}) response.json()
触发报错:
ModuleNotFoundError: No module named 'woocommerce'
但使用系统终端执行pip install woocommerce时,提示模块已安装:
C:\Users\info>pip install woocommerce Requirement already satisfied: woocommerce in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (3.0.0) Requirement already satisfied: requests in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from woocommerce) (2.28.1) Requirement already satisfied: idna<4,>=2.5 in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from requests->woocommerce) (3.4) Requirement already satisfied: certifi>=2017.4.17 in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from requests->woocommerce) (2022.9.24) Requirement already satisfied: charset-normalizer<3,>=2 in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from requests->woocommerce) (2.1.1) Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\info\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from requests->woocommerce) (1.26.12)
核心原因
这是Python环境不匹配导致的:
- 你使用系统默认的Python 3.10对应的pip安装了
woocommerce模块,模块被存放在系统Python的site-packages目录中 - 但Anaconda Navigator启动的Jupyter Lab,默认使用的是Anaconda自带的独立Python环境,两个环境的模块存储目录完全隔离,因此Jupyter Lab无法找到安装在系统Python环境里的
woocommerce模块
解决方法
方法1:在Anaconda环境中安装模块
- 打开Anaconda Navigator,切换到你用于运行Jupyter Lab的环境(比如base环境)
- 点击该环境下的「Open Terminal」按钮,打开环境专属终端
- 在终端中执行以下命令之一安装模块:
conda install -c conda-forge woocommerce # 或者使用pip安装 pip install woocommerce
方法2:让Jupyter Lab使用系统Python环境
- 打开系统终端,先给系统Python安装内核支持:
pip install ipykernel - 将系统Python环境注册为Jupyter的内核:
python -m ipykernel install --name "py310-system" --display-name "Python 3.10 (System)" - 重启Jupyter Lab,在新建笔记本时选择「Python 3.10 (System)」内核即可
内容的提问来源于stack exchange,提问作者Ron Kieftenbeld
相关产品推荐
相关产品推荐

