我正在使用web2py开发一个Web应用程序。在我的Python代码中,我必须使用psutil来计算磁盘大小,正在使用的RAM,可用RAM和相关信息。
我在我的系统上安装了psutil-2.1.1 for Python 2.7,到目前为止我对psutil没有任何问题。 但是当我将psutil导入我的web2py应用程序时,我得到一个导入错误,如下所示:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\psutil\__init__.py", line 53, in <module>
from psutil._common import memoize
File "C:\Python27\lib\site-packages\psutil\_common.py", line 12, in <module>
import socket
File "C:\Python27\lib\socket.py", line 47, in <module>
import _socket
ImportError: DLL load failed: %1 is not a valid Win32 application.
我理解这个错误意味着我试图将一个32位的东西导入64位 - 或者反之亦然。独立于web2py,psutil工作正常。我也尝试在虚拟环境中运行相同的程序,它也会出现同样的错误。据我所知,web2py没有针对32位和64位的明确单独安装程序,所以我不明白问题所在。
您可以在下面找到我必须使用psutil的代码:
#all necessary imports
import psutil
def summ_handler():
#...
disk_size = float (psutil.disk_usage(curr_dir).total)/(1024**3)
print ("System Space : %sGB " %disk_size)
#...
ram_total = float(psutil.phymem_usage().total)/(1024**3)
ram_free = float(psutil.phymem_usage().free)/(1024**3)
ram_used = ram_total - ram_free
#printing
#...
编辑:
我在sys.path
这里
sys.path
的web2py
醇>
C:\Python27\web2py\site-packages
C:\Python27\web2py
C:\Python27\web2py\gluon
C:\Python27\lib\site-packages\setuptools-5.4.1-py2.7.egg
C:\Python27\lib\site-packages\distribute-0.6.49-py2.7.egg
C:\Python27\web2py\library.zip
C:\Python27
C:\Python27\lib\site-packages
C:\Python27\lib\site-packages\win32
C:\Python27\lib\site-packages\win32\lib
C:\Python27\lib\site-packages\Pythonwin
C:\Python27\lib\site-packages\setuptools-0.6c11-py2.7.egg-info
C:\Python27\web2py\gluon
sys.path
表示普通脚本。 psutil
在这里工作。 C:\Python27\lib\site-packages\setuptools-5.4.1-py2.7.egg
C:\Python27\lib\site-packages\distribute-0.6.49-py2.7.egg
C:\windows\system32\python27.zip
C:\Python27\DLLs
C:\Python27\lib
C:\Python27\lib\plat-win
C:\Python27\lib\lib-tk
C:\Python27
C:\Python27\lib\site-packages
C:\Python27\lib\site-packages\win32
C:\Python27\lib\site-packages\win32\lib
C:\Python27\lib\site-packages\Pythonwin
C:\Python27\lib\site-packages\setuptools-0.6c11-py2.7.egg-info