我正在尝试用PyInstaller将一些python代码转换为exe,导入sklearn时遇到了问题。你知道吗
我在尝试编译这个简单的脚本时发现了这个问题主.py地址:
import sklearn
print("success")
除非我将以下内容添加到spec文件中,否则此操作不起作用:
hiddenimports=['sklearn.neighbors.typedefs'],
但由于某些原因,当我将脚本更改为
import scapy.sendrecv
import sklearn
print("success")
它可以编译,但无法在运行时导入sklearn
另一件奇怪的事情是,不是所有的scapy库都使它有bug,事实上,有了这个文件:
import scapy.layers
import sklearn
print("success")
它工作得很好。。。你知道吗
我试着为scapy创建钩子,在hiddenimports中添加scapy,但是没有任何效果。。。 如果你有什么想法,我会很高兴听到的!你知道吗
这是完整的主要规格文件
# -*- mode: python ; coding: utf-8 -*-
import sys
sys.setrecursionlimit(5000)
block_cipher = None
a = Analysis(['main.py'],
pathex=['C:\\Users\\cpin\\pyinstaller_test'],
binaries=[],
datas=[],
hiddenimports=['sklearn.neighbors.typedefs'],
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='main',
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='main')
以下是错误输出:
错误发生在中的第46行主.py上面是注释代码(例如import scapy.sendrecv
)
目前没有回答
相关问题 更多 >
编程相关推荐