【问题标题】:PyInstaller : script not foundPyInstaller:找不到脚本
【发布时间】:2021-06-09 17:19:54
【问题描述】:

我想用 pyinstaller 创建一个简单的 python 脚本的简单 .exe 文件。我按照指南(https://www.pyinstaller.org/):

  1. 点安装 pyinstaller
  2. pyinstaller yourprogram.py

但我没有在 DIST 文件夹中获取我的 .exe 文件,如 https://pyinstaller.readthedocs.io/en/stable/usage.html 中所述:

在 dist 文件夹中,您可以找到分发给您的捆绑应用程序 用户。

我将 Python 3.7.6 与 anaconda 一起使用。我首先从www.pypi.org/project/pyinstaller/ 下载 PyInstaller,它是 4.2 版,但它给了我同样的以下错误,所以我尝试使用正在开发的最新版本 5.0。

就我而言,我是在 Anaconda Prompt 中执行的:

C:\Users\David Gomez\Desktop\test>pyinstaller simple.py

我得到:

1418 INFO: PyInstaller: 5.0.dev0
1418 INFO: Python: 3.7.6 (conda)
1418 INFO: Platform: Windows-10-10.0.19041-SP0
1432 INFO: wrote C:\Users\David Gomez\Desktop\test\simple.spec
1434 INFO: UPX is not available.
script 'C:\Users\David Gomez\Desktop\test\simple.py' not found

然后找不到脚本。经过一番研究,我认为问题在于我的名字“David Gomez”之间的路径中的空格,所以我用引号写了路径:

C:\Users\David Gomez\Desktop\test>pyinstaller "C:\Users\David Gomez\Desktop\test\simple.py" 

但同样的错误仍然存​​在。

然后我发现另一个人有同样的问题(Script not found when using pyinstaller),但答案并不令人信服,我显然不想安装另一个 python。我创建了一个新主题,因为该主题不再更新,建议的解决方案:

我找到了解决方案。我必须首先从他们自己的网站而不是 Windows 商店安装 Python。然后我不得不将它添加到 PATH 中。在此之后它仍然无法正常工作,因为我使用的是 Python 3.8.0,所以我必须安装 pyinstaller 开发版本。

任何想法可能是什么问题?任何帮助或猜测表示赞赏。如果需要进一步澄清,请告诉我。

编辑部分

当我使用命令dir 检查我的文件夹时,我得到:

 C:\Users\David Gomez\Desktop\test>dir
 Le volume dans le lecteur C s’appelle Windows
 Le numéro de série du volume est 3AFA-C44C

 Répertoire de C:\Users\David Gomez\Desktop\test

15.03.2021  11:20    <DIR>          .
15.03.2021  11:20    <DIR>          ..
11.03.2021  15:52               160 simple.py.py
               1 fichier(s)              160 octets
               2 Rép(s)  166,905,487,360 octets libres

然后,我执行命令C:\Users\David Gomez\Desktop\test&gt;pyinstaller "C:\Users\David Gomez\Desktop\test\simple.py" 并创建两个新的空文件夹(build、dist)和一个文件simple.spec。通常,如果一切正常,则文件夹不为空。现在,如果我再次使用dir 命令检查我的文件夹:

C:\Users\David Gomez\Desktop\test>dir
 Le volume dans le lecteur C s’appelle Windows
 Le numéro de série du volume est 3AFA-C44C

 Répertoire de C:\Users\David Gomez\Desktop\test

11.03.2021  16:57    <DIR>          .
11.03.2021  16:57    <DIR>          ..
11.03.2021  16:57    <DIR>          build
11.03.2021  16:57    <DIR>          dist
11.03.2021  15:52               160 simple.py.py
11.03.2021  17:41             1,059 simple.spec
               2 fichier(s)            1,219 octets
               4 Rép(s)  166,908,215,296 octets libres

Simply.py 在文件夹中,但 pyinstaller 找不到,我仍然不知道该怎么办。

我不知道它是否有用,但这里有 simple.spec 的内容:

# -*- mode: python ; coding: utf-8 -*-

block_cipher = None


a = Analysis(['simple.py'],
             pathex=['C:\\Users\\David Gomez\\Desktop\\test'],
             binaries=[],
             datas=[],
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher,
             noarchive=False) pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher) exe = EXE(pyz,
          a.scripts,
          [],
          exclude_binaries=True,
          name='simple',
          debug=False,
          bootloader_ignore_signals=False,
          strip=False,
          upx=True,
          console=True ) coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=False,
               upx=True,
               upx_exclude=[],
               name='simple')

【问题讨论】:

    标签: python python-3.x pyinstaller


    【解决方案1】:

    您的问题与您的 pyinstaller 安装位置无关,而是该目录中不存在 simple.py 文件。 (至少在我看来是这样)

    【讨论】:

    • 抱歉,我刚刚编辑了我的帖子。我在复制路径时犯了一些错误。现在您可以清楚地看到该文件存在于我的文件夹中: C:\Users\David Gomez\Desktop\test>pyinstaller "C:\Users\David Gomez\Desktop\test\simple.py" 我在测试文件夹中并且使用文件夹中的文件 simple.py 执行 pyinstaller。其他想法?
    • 您可以运行ls 命令来查看该目录的内容吗? @DavidAndréGomezRomero
    • 我在 Windows 上工作,所以当我执行dir 命令时,我得到:C:\Users\David Gomez\Desktop\test>dir Le volume dans le lecteur C s' appelle Windows Le numéro de série du volume est 3AFA-C44C Répertoire de C:\Users\David Gomez\Desktop\test 15.03.2021 11:20 。 15.03.2021 11:20 .. 11.03.2021 15:52 160 simple.py.py 1 fichier(s) 160 octets 2 Rép(s) 166,905,487,360 octets libres @101donutman
    • 我已从以下部分更新了我的帖子:“已编辑部分”。我希望这些信息对您有所帮助,如果您有任何其他想法,请告诉我。谢谢
    • 您的问题是您的文件名为simple.py.py 而不是simple.py。因此,该目录中不存在文件simple.py。 @DavidAndréGomezRomero
    猜你喜欢
    • 1970-01-01
    • 2022-08-07
    • 2021-11-05
    • 2017-02-02
    • 2013-07-13
    • 2014-10-31
    • 1970-01-01
    • 1970-01-01
    • 2017-09-12
    相关资源
    最近更新 更多