gpt4 book ai didi

python - 如何正确创建 pyinstaller Hook ,或者隐藏导入?

转载 作者:太空狗 更新时间:2023-10-29 17:39:39 29 4
gpt4 key购买 nike

我有两个包(例如,datareaddatainspector),PyInstaller 未检测到它们。因此,当运行的应用程序到达需要从这些包中导入模块的位置时,应用程序将终止。

最简单的解决方案是将 datareaddatainspector 复制到打包的应用程序中。但这将打破打包应用程序二进制版本的意图。

我看过 highded imports 和 hook,我认为两者都可以解决问题,但我不确定该使用哪个。

有什么建议吗?PS:这两个包都可能包含嵌套目录。

最佳答案

Hook 是在 PyInstaller 找到导入语句时指定额外操作的文件。

如果您添加一个 hook-data.py 文件,其中包含一行 hiddenimports = ['_proxy', 'utils', 'defs'],PyInstaller 将检查它会在看到 import data 时查找其他导入。

您必须通过 --additional-hooks-dir 指定 Hook 目录的路径(如果您不想将源代码与仅编译文件混合,这很有用,并且而不是将它们放在单独的目录中)。

更简单的解决方案是使用 --hidden-import=modulename 和 PyInstaller 脚本。它会以静默方式添加 modulename 作为 import 语句。

如果您想指定哪个导入需要哪些附加模块,则 Hook 会更好。 --hidden-import 作为一次性或用于调试更简单。

更多信息 - https://pyinstaller.readthedocs.io/en/stable/hooks.html

关于python - 如何正确创建 pyinstaller Hook ,或者隐藏导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27947639/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com