python - Py2Exe "The following modules are missing"

标签 python py2exe

使用 Py2Exe 时,我收到诸如

之类的警告
The following modules appear to be missing
['Crypto', 'Crypto.Cipher', 'Crypto.Hash', 'Padding']

由于找不到这些模块而导致 EXE 错误。我可以看到它们在我的站点包中,那么为什么它没有检测到它们?

注意:Crypto 和 Padding 是通过 pip/easy_install 安装的

最佳答案

首先,检查您的包裹是否为 .EGG 格式

Py2Exe 似乎与 Python 的 .egg 包存在问题。通过提取 .egg 文件(重命名为 .zip 并提取到站点包中,不包括 EGG-INFO 文件夹),Py2Exe 现在可以毫无问题地检测这些包。

检查您的 setup.py 以确保您使用的是正确的选项。窗口应用程序使用“windows=”,而控制台应用程序使用“console=”

在其他一些情况下,可以通过使用 setup(console=['main.py']) 而不是 setup(windows=['main.py']) 如果您正在生成窗口应用程序。

如果仍然不起作用,您可以尝试告诉 Py2Exe 手动包含该包

某些包可以通过将它们添加到 setup.py 的包选项中来进一步解析,如下所示:

setup(
    windows=['main.py'],
    options={
            "py2exe":{
                    "packages": ["Crypto", "Padding"]
            }
    }

关于python - Py2Exe "The following modules are missing",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31436591/

相关文章:

python - pandas matplotlib .plot(kind ='hist') vs .plot(kind ='bar') 问题

python - py2exe:MKL fatal error :无法加载 mkl_intel_thread.dll

python - py2app'ed 应用程序在别名模式下正常运行但在捆绑时不能

python - py2exe;导入错误没有名为 colorama 的模块

python - 将列中的所有唯一单词放入新数据集中

python - 在 uwsgi 应用程序中启动 APScheduler 最终会为每个 worker 分配一个调度程序吗?

python - 带有 py2exe 的 scipy

python - 包含sklearn时如何使用py2exe?

python - 构建带有行的 Pandas 数据框,条件是它们不存在于另一个数据框python中

Python - 查找由多个点跨越的线之间的交点