使用 python 脚本为 Windows 创建可执行安装程序
另一个技术条目。
快速上下文,我在python(烧瓶)中有一个背面和一个正面(测试版)。我在浏览器中提高了位置。
烧瓶运行端口上的后部升降机 --port=5001
端口烧瓶运行时前端上升 --port=5000
应用程序在浏览器中运行。
http://localhost:5000/
基本,到目前为止没有什么新内容。
我必须在另一台机器上安装这个应用程序。想法 1 安装 python 以及所有库和依赖项......不。
副驾驶再次来救援。我将提示您将这些 python 脚本安装为 windows 可执行文件的提示。
我推荐一些有趣的东西。
首先,建立虚拟环境,安装依赖项,确保一切在本地正常工作,然后...
首先使用pyinstaller生成我的应用程序的.exe文件。
pip install pyinstaller
在我运行的每个目录中:
/我的项目/后端
/我的项目/前端
pyinstaller --onefile --name backend app.py
这里我必须指定将模板作为参数传递,因为它给出了 jynga2 错误
pyinstaller --onefile --name frontend --add-data
“模板;模板”app.py
示例:
下一步,安装 inno setup 以生成安装程序。
网络 - inno setup
好吧,我也必须承诺一些东西才能有基础,因为我不知道如何编写脚本或 inno setup 的语法。
[Setup] AppName=My Awesome APP AppVersion=1.0 DefaultDirName={pf}\MyAwesomeAPP DefaultGroupName=My Awesome APP OutputBaseFilename=MyAwesomeAPP Compression=lzma SolidCompression=yes [Files] ; Incluir todos los archivos del proyecto Source: "C:\Users\url-a-tu-proyecto\*"; DestDir: "{app}"; Flags: recursesubdirs createallsubdirs ; Incluir los ejecutables generados por pyinstaller Source: "C:\Users\url-a-tu-proyecto\frontend\dist\frontend.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "C:\Users\url-a-tu-proyecto\backend\dist\backend.exe"; DestDir: "{app}"; Flags: ignoreversion [Icons] Name: "{group}\My Awesome APP"; Filename: "{app}\frontend.exe" Name: "{group}\My Awesome APP"; Filename: "{app}\backend.exe" [Run] ; Ejecutar el backend Filename: "{app}\backend.exe"; Flags: nowait ; Ejecutar el frontend Filename: "{app}\frontend.exe"; Flags: nowait
这是我的基础结构。
编译,等待几分钟...就会生成输出。
这是第一个安装程序:d
一开始它显然不起作用……但经过 16 次测试后,该应用程序仍然运行。正在运行的脚本...
并且从我的浏览器我可以访问我的应用程序。
这个问题的有趣之处在于工具!明显地。我喜欢的是,我发现使用 inno setup 既快速又简单,我学会了处理一些 pyinstaller 配置问题,例如模板的标志......错误很奇怪 :p
并且使用新技术和python总是令人愉快......
接下来可能是一些带有这些脚本的桌面应用程序,以稍微优化最终大小、文件架构,并且显然终端不是实时直接运行的,带有来自开发环境的消息并且必须从浏览器输入本地主机! :恐慌