如何冻结我的Python代码与PyInstaller时,exe说它错过了一些文件?



我正在使用Python 3.7.9和Pyinstaller 5.0.1

我正在尝试冻结使用阴影的代码。当我从Pycharm执行它时,它运行良好。当我冻结代码后执行exe时,我得到这个错误:

FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\gauth\AppData\Local\Temp\_MEI233082\pyshadow\resources\querySelector.js

当你的python代码使用一些需要第三方文件的特定模块时,这可能是一个常见的问题。在我的情况下,它是关于影子丢失一个JS文件。

所以我在冻结命令中添加了这个文件'querySelector.js':

pyinstaller --onefile -F --uac-admin --icon="icon_PhoneBot_256.ico" --clean --noconsole --add-data "querySelector.js;." main.py

但是我仍然得到相同的错误。

有没有人知道如何解决这个问题?

感谢rokm。我从PyInstaller开发人员的git论坛上得到了他的帮助(详细信息在这里:https://github.com/pyinstaller/pyinstaller/discussions/6905)。我把他的答案发表在这里,以防有人有同样的问题。

我必须添加参数:

--collect-data pyshadow
所以我的最后一个命令是:
pyinstaller --onefile -F --uac-admin --icon="icon_PhoneBot_256.ico" --clean --noconsole  --collect-data pyshadow main.py

它就像一个魅力!

相关内容

  • 没有找到相关文章

最新更新