Pyinstaller导入错误:找不到模块

问题描述

我正在尝试使用大量模块在python中创建程序的exe。从cmd运行它,一切正常。但是,当我尝试运行exe(使用pyinstaller 4.0创建)时,它不起作用。我得到了错误

No module named 'vtk.numpy_interface

我在main.spec上尝试了以下所有更改,但在所有这些更改中,我都遇到了相同的错误

  • “ hddenimports”标签中的vtk.numpy_interface
  • ('datas'标签中的('C:\ Python \ python37 \ Lib \ site-packages \ vtkmodules','./numpy_interface /')
  • “ pathex”标记中的“ C:\ Python \ python37 \ Lib \ site-packages \ vtkmodule pathex”

我的程序不使用vtk.numpy_interface。但是我发现它是由pyvista.core.datasetattributes导入的(在我的程序中,我导入pyvista)。

我正在使用python 3.7.6和vtk 9.0。当我使用vtk 8.9.0时,我没有收到此错误

有人可以帮助我吗?

解决方法

关于pyinstaller,我还遇到了VTK 9.0的问题,建议继续使用vtk==8.1.2(在PyPI上可用),直到在下一个vtk版本中解决此问题为止。