Skip to content

[Windows]: ImportError: No module named 'resource'

When importing SICOR on a Windows system, there is an incompatible library:

(enpt) D:\Temp\SPECHOM_py\sicor>ipython
Python 3.5.5 | packaged by conda-forge | (default, Jul 24 2018, 01:52:17) [MSC v.1900 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import sicor
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-1ed14707aa6e> in <module>()
----> 1 import sicor

D:\Temp\SPECHOM_py\sicor\sicor\__init__.py in <module>()
      4 import os
      5 from .version import __version__
----> 6 from .sicor_ac import ac
      7 from .sicor_ac import ac_gms
      8 from .options.options import get_options

D:\Temp\SPECHOM_py\sicor\sicor\sicor_ac.py in <module>()
     35 import gdal
     36
---> 37 from .AC.RtFo import Rho2Rj_const, Rj2RhoJ_const, RtFo
     38 from .AC.ACG import instrument_subset
     39 from .Tools import RAM

D:\Temp\SPECHOM_py\sicor\sicor\AC\RtFo.py in <module>()
     18
     19 # custom imports
---> 20 from ..Tools import initializer, SharedNdarray
     21 from ..Tools import SolarIrradiance
     22 from ..Tools import box_rspf, gauss_rspf

D:\Temp\SPECHOM_py\sicor\sicor\Tools\__init__.py in <module>()
     10 from .inpaint import nanmean_filter
     11
---> 12 from .ram import RAM
     13
     14 from .sharedndarray import initializer, SharedNdarray

D:\Temp\SPECHOM_py\sicor\sicor\Tools\ram.py in <module>()
      1 import os
      2 import psutil
----> 3 import resource
      4 from psutil import virtual_memory
      5

ImportError: No module named 'resource'

Possible solution:

https://stackoverflow.com/questions/37710848/importerror-no-module-named-resource

resource is a Unix specific package as seen in https://docs.python.org/2/library/resource.html which is why it worked for you in Ubuntu, but raised an error when trying to use it in Windows.

The module psutil provides a cross-platform library for monitoring and managing running processes and system usage (CPU, memory, disks, network, sensors)