2

我正在使用 pyinstaller 创建一个独立的 exe 文件,但是当我尝试运行它时出现“modulenotfound”错误。即使 PIL 模块与我的所有其他模块位于相同的“站点包”文件夹中,它也无法找到它。我如何告诉它 PIL 模块在哪里?

使用 pyinstaller 时,我在我的 cmd 行中尝试了以下标志,但它们都不起作用:

--hidden-import=Pillow
--hidden-import='PIL'
--hidden-import='Pillow'

关于 PIL 模块,我的脚本使用以下代码行:

    from PIL import Image, ImageTk

脚本中的一切正常,只有当我使用 pyinstaller 时才会出现问题。

4

3 回答 3

1

我找到了一个解决方案:我必须在 PyCharm 终端中安装 pyinstaller,然后我必须在 PyCharm 终端中运行 pyinstaller 以及使用

pyinstaller --onefile -w "foo.py"

我以前在 PyCharm 之外的文件目录中运行 cmd 并在那里运行 pyinstaller,但在 PyCharm 中运行 pyinstaller 是可行的。

于 2020-09-25T16:51:38.583 回答
0

我只是PIL从驱动器中的 Python 文件夹中复制了 library 文件夹并将其移动到与文件相同的文件夹中.py,然后我使用该行运行 cmd,--hidden-import=PIL它就可以工作了,只需记住将可执行文件放在与您相同的目录中即可放在您的代码行中,如果它不在同一目录中,则可能无法运行。

于 2021-01-15T19:12:10.983 回答
0

对谁有帮助 我在尝试使用 Pyinstaller 使用 pymssql 时遇到了很多问题,我终于做对了,所以在你使用 pip install pymssql 安装 pymssql 后,在这里发帖可能会对某人有所帮助

在 pyintaller 中使用此参数将其包含在内

--onefile --paths=.\venv\ --hidden-import='pymssql' --hidden-import='uuid' --collect-all='pymssql' --collect-all='uuid'
于 2021-08-13T14:37:34.307 回答