首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >` `ModuleNotFoundError:导入psutil模块时没有名为‘psutil’的模块

` `ModuleNotFoundError:导入psutil模块时没有名为‘psutil’的模块
EN

Stack Overflow用户
提问于 2021-06-11 14:12:45
回答 1查看 285关注 0票数 0

在我的烧瓶项目中,我使用uwsgi运行它。

在我的项目中有import psutil

当然,我在我的静脉里安装了最新的psutil:

代码语言:javascript
复制
(venv) [root@7338cdd80407 ssl-node]# pip3 install --upgrade psutil
Requirement already satisfied: psutil in /www/wwwroot/ssl-node/venv/lib64/python3.6/site-packages (5.8.0)

但是当我执行我的烧瓶代码时,会得到错误的ModuleNotFoundError: No module named 'psutil'

代码语言:javascript
复制
python threads support enabled
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
mapped 703600 bytes (687 KB) for 8 cores
*** Operational MODE: preforking+threaded ***
added /www/wwwroot/ssl-node/ssl-node/ to pythonpath.
Traceback (most recent call last):
  File "/www/wwwroot/ssl-node/ssl-node/manager.py", line 9, in <module>
    from api import app
  File "/www/wwwroot/ssl-node/ssl-node/api.py", line 5, in <module>
    from utils import utils, util_check_pem_key_cert
  File "/www/wwwroot/ssl-node/ssl-node/utils/utils.py", line 8, in <module>
    from .util_process import (
  File "/www/wwwroot/ssl-node/ssl-node/utils/util_process.py", line 6, in <module>
    import psutil
ModuleNotFoundError: No module named 'psutil'
unable to load app 0 (mountpoint='') (callable not found or import error)

编辑-01

我的pip3pip都来自venv

代码语言:javascript
复制
(venv) [root@7338cdd80407 ssl-node]# which pip3
/www/wwwroot/ssl-node/venv/bin/pip3
(venv) [root@7338cdd80407 ssl-node]# which pip 
/www/wwwroot/ssl-node/venv/bin/pip

编辑-02

我的python3路径:

代码语言:javascript
复制
(venv) [root@7338cdd80407 ssl-node]# which python3
/www/wwwroot/ssl-node/venv/bin/python3

我使用uwsgi -d --ini uwsgi_prod.ini执行我的烧瓶项目:

uwsgi_prod.ini内容:

代码语言:javascript
复制
[uwsgi]
http=0.0.0.0:5000
processes=4
threads=2
master=true
pythonpath=/www/wwwroot/ssl-node/ssl-node
module=manager
callable=app
memory-report=true
buffer-size=32768
static-map=/static=/www/wwwroot/ssl-node/ssl-node/static
daemonize=/www/wwwroot/ssl-node/ssl-node/log/uwsgi.log

您可以看到从manager.py中执行:它的内容:

代码语言:javascript
复制
#-*- coding:utf-8 -*-
# Author: jack

import sys,os

path = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
sys.path.append(path)

from api import app

if __name__ == "__main__":
    app.run("0.0.0.0")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-11 15:03:32

您的问题是,uwsgi不是从通风口内运行的。若要这样做,请使用以下方法运行应用程序:

代码语言:javascript
复制
uwsgi -d --ini uwsgi_prod.ini -H /www/wwwroot/ssl-node/venv/bin/python3

请参阅类似的问题这里或文档这里

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67938566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档