我是编程新手。我做了一个python脚本。它在pycharm中运行没有错误。我使用pyinstaller尝试制作一个exe。当我在build或dist文件夹中甚至通过命令提示符运行exe时,它给我错误“无法执行脚本主程序”
我正在附加警告文件链接:
https://drive.google.com/open?id=1cDQ2KGId0B8K9Qi1bWPIhL55hQO0dM-z
请帮助!
答案 0 :(得分:2)
每个虚拟环境都有一个pip脚本。因此,当您安装python模块时,它将安装到projectname \ venv \ Lib \ site-packages目录中。
从终端运行pyinstaller以生成可执行文件时,pyinstaller会检查Sys.path中的依赖项。但是该路径不包括projectname \ venv \ Lib \ site-packages目录。因此,pyinstaller无法找到那些特定的依赖项。在这种情况下,它会向您发出警告。可以在可执行文件附近的“ warnname.txt”中找到这些警告。
如何配置pycharm以运行pyinstaller
update
脚本名称:python脚本的路径
工作路径:项目位置
保留解释器选项在图像中的位置。
运行pyinstaller。您可以在dist目录中找到您的.exe。
如果“找不到模块”错误仍然存在。您可以添加一个隐藏的导入挂钩并指定缺少的模块的名称。导航到 Project Path \ venv \ Lib \ site-packages \ PyInstaller \ hooks 并创建一个新的“ hook-pandas .py ”(hook-modulename.py)脚本,并列出隐藏的导入模块,如下所示:
hiddenimports = ['pandas._libs.tslibs.np_datetime','pandas._libs.tslibs.nattype','pandas._libs.skiplist']
答案 1 :(得分:1)
我知道我是在 10 个月后写这篇文章的,但我遇到了同样的问题,我知道解决方案。所以,也许一些有同样问题的人可以得到帮助。
如果您的脚本有任何其他文件,例如 db、csv、png 等,您应该将此文件添加到同一目录中。这样你就可以解决我猜的问题。至少我的问题是这样解决的。