2 回答
TA贡献1825条经验 获得超4个赞
我已经解决了问题,并将其作为此问题的答案发布,以防将来有人遇到类似问题。
经过研究,我发现在大多数情况下,PyInstaller 的速度很慢,其中有一个更大的 python 文件,即机器学习。集成 PyInstaller 和 JS/HTML/CSS 还存在其他问题,您必须使用 Eel 在文档之间进行通信,随后,您制作的每个桌面/网络应用程序都必须涉及谷歌浏览器。
解决方案:作为通过 PyInstaller 构建桌面应用程序的替代方案,我正在使用 Blazor/Electron 构建它。Blazor/Electron 和 Python 之间没有直接联系,因为 Blazor 依赖于 C#、JS/HTMLCS。因此,我将 IronPython 移植到我的 C# 文件中,这使我能够沿着以下路径进行通信。C# -> Python -> C# -> JS/HTML/CSS。Blazor/Electron 的另一个优势是应用程序可以构建为本地桌面应用程序而无需 Internet 连接,并且启动速度更快。最后,C# 允许为您的应用程序构建启动画面(应用程序首次启动时加载屏幕),因此即使您的应用程序很大且加载时间很长,也可以通知用户桌面应用程序正在加载!
TA贡献1851条经验 获得超4个赞
有没有可能在使用 Pyinstaller 编译您的应用程序时,您使用了--onefile
?如果是这种情况,请尝试不使用此命令再次编译,看看问题是否仍然存在。
来自 Pyinstaller 文档:
...单个可执行文件的启动速度比单文件夹包慢一点。
在您尝试捆绑到一个文件之前,请确保您的应用程序在捆绑到一个文件夹时可以正常工作。在单文件夹模式下诊断问题要容易得多。
添加回答
举报