0

我能够为我的 python 代码创建一个 exe 文件,没有任何问题。

当我运行 exe 文件时,我遇到了一些包,如 srsly.msgpack.util 、 _custom_kernels.cu 和许多其他包,因为 pyInstaller 本身并没有安装所有需要的包。所以我经历了这个并创建了一个挂钩文件来解决这些问题。

hook.py 文件如下所示:

# HOOK FILE FOR SPACY
from PyInstaller.utils.hooks import collect_all
from PyInstaller.utils.hooks import collect_data_files

data = collect_data_files("en_core_web_sm")

datas = data[0]
binaries = data[1]
hiddenimports = data[2]
# ----------------------------- SPACY -----------------------------
data = collect_all('spacy')

datas = data[0]
binaries = data[1]
hiddenimports = data[2]

# ----------------------------- THINC -----------------------------
data = collect_all('thinc')

datas += data[0]
binaries += data[1]
hiddenimports += data[2]

# ----------------------------- CYMEM -----------------------------
data = collect_all('cymem')

datas += data[0]
binaries += data[1]
hiddenimports += data[2]

# ----------------------------- PRESHED -----------------------------
data = collect_all('preshed')

datas += data[0]
binaries += data[1]
hiddenimports += data[2]

# ----------------------------- BLIS -----------------------------

data = collect_all('blis')

# ----------------------------- OTHER ----------------------------

hiddenimports += ['srsly.msgpack.util']

我还在我的 hook.py 文件中添加了“en_core_web_sm”,但看起来它没有下载“en_core_web_sm”所需的包。

我还尝试从我的 '\AppData\Local\Programs\Python\Python38\Lib\site-packages' 路径中手动添加 'en_core_web_sm' 文件夹。但它会抛出错误,说使用了第三方包。

当我尝试执行我的 exe 文件时出现以下错误。 在此处输入图像描述

Python 版本:3.8.10(64 位)

点子版本:21.1.2

pyinstaller 版本:5.0.dev0

请教如何解决这个问题,在此先感谢!

4

0 回答 0