Pyinstaller 的 ModuleNotFoundError

ado*_*ong 2 python pyinstaller

我写了一个带有PyQt5+Python3.6接口的工具,想打包成.exe文件在没有Python环境的机器上运行。根据网上使用pyinstaller打包,打包结束后在dist文件夹中打开exe文件后报错:

ModuleNotFoundError: 没有名为“scipy._lib.messagestream”的模块

在解决了 .spec 文件的 hiddenimports 后,此问题得到了修正:

hiddenimports=['scipy._lib.messagestream']
Run Code Online (Sandbox Code Playgroud)

然后是命令生成的新 .exe 文件:

pyinstaller x.spec
Run Code Online (Sandbox Code Playgroud)

还是报错。

ModuleNotFoundError: 没有名为“typedefs”的模块

然后,继续添加……继续报错,这一切都报错……

你怎么解决这个问题?

Ped*_*dro 5

您是否在虚拟环境 (venv) 中工作?如果是这样,您应该添加站点包路径:

pyinstaller --paths path\to\venv\Lib\site-packages script.py
Run Code Online (Sandbox Code Playgroud)

在我使用 --paths 运行 pyinstaller 之前,它使用 selenium 模块发生在我身上