使用 python 脚本为 Windows 创建可执行安装程序
今天将给大家带来《使用 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总是令人愉快……
接下来可能是一些带有这些脚本的桌面应用程序,以稍微优化最终大小、文件架构,并且显然终端不是实时直接运行的,带有来自开发环境的消息并且必须从浏览器输入本地主机! :恐慌
理论要掌握,实操不能落!以上关于《使用 python 脚本为 Windows 创建可执行安装程序》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注公众号吧!
版本声明 本文转载于:dev.to 如有侵犯,请联系删除