python项目打包成exe和安装包的方法步骤
作者:Generalzy 发布时间:2023-06-29 08:37:21
标签:python,项目打包
一.打包Flask项目
1.1自己写个Flask
1.2 下载pyinstaller
pip install pyinstaller
可选参数 | 示例 | 说明 |
---|---|---|
-F | pyinstaller -F demo.py | 只在dist文件夹中生成一个程序demo.exe文件,适用于一个模块没有多依赖.py文件 |
-D | pyinstaller -D demo.py | 默认选项,除了主程序demo.exe外,还会在在dist文件夹中生成很多依赖文件,推荐使用这个 |
-c | pyinstaller -c demo.py | 默认选项,只对windows有效,使用控制台 |
-w | pyinstaller -w demo.py | 只对windows有效,不使用控制台 |
-p | pyinstaller -p D:\project\demo.py | 设置导入路径 |
-i | pyinstaller -i D:\demo.ico demo.py | 给生成的demo.exe文件设置一个自定义的图标 |
1.3 进入到项目路径下,执行
# run.py 是flask项目的执行文件,app.run所在py文件
pyinstaller -D run.py
# 可以看到项目路径下有
-build文件夹
-dist文件夹:重要,下有run文件夹(py文件名字),有个run.exe(py文件的名字)
-run.spec
# 把pro_flask这个文件夹,拷贝到dist下的run文件夹
-因为flask项目有静态文件和html文件,如果不拷贝过去,静态文件和html文件会找不到
-我们为了隐藏代码,可以把所有python的代码都删除,只留static和templates文件夹
1.4 运行exe,测试
# 到dist/run文件夹下,双击 run.exe,启动
如下图
# 浏览器访问
如下图
二.使用nsis把文件夹打包成windows的安装包
2.1 下载安装nsis
nsis:NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序,它提供了安装、卸载、系统设置、文件解压缩等功能。这如其名字所指出的那样,NSIS 是通过它的脚本语言来描述安装程序的行为和逻辑的
利用 nsis 把刚刚的dist的run文件夹打包成windows的安装包
2.2把dist文件夹下的run文件夹压缩成zip
2.3使用nsis把压缩包,做成windows安装文件
来源:https://blog.csdn.net/General_zy/article/details/121307835


猜你喜欢
- 本文为大家分享了pygame游戏之旅的第14篇,供大家参考,具体内容如下添加icon需要用的函数是:gameIcon = pygame.im
- 1.简介Psycopg是一种用于执行SQL语句的PythonAPI,可以为PostgreSQL、openGauss数据库提供统一访问接口,应
- 一、关于空值 提示: 在MySQL中如果不为NOT NULL字段赋值(等同于赋NULL值) 例如: 为一个NOT NULL的整型赋NULL值
- 如下所示:import ioimport torchimport torch.onnxfrom models.C3AEModel impor
- 一、打包多个1、将需要打包的项目为anjuke_sd目录下的所有python文件,其中excute_main.py为主文件。2、生成主函数对
- 计算字符长度的js函数function LEN(str){ var i,sum=0; for(i=0;i<str.length;i++
- 1.添加自定义机器人2.编写python代码请求钉钉机器人所给的webhook钉钉自定义机器人官方文档安全方式使用加签的方式:第一步,把ti
- Series属性Series属性列表属性说明Series.index系列的索引(轴标签)Series.array系列或索引的数据Series
- 记录一下关于geemap的安装步骤,geemap是基于GEE由吴秋生老师二次开发的一个包,geemap主要使用python来进行实现相关功能
- 今天给大家分享一个简单的python脚本,使用python进行http的接口测试,脚本很简单,逻辑是:读取excel写好的测试用例,然后根据
- 1. 游戏是更注重于体验的产品,所以应该将游戏本省做得更加炫动和增加参与感觉。2. 网络游戏和单击游戏的区别在于社会化的添加,所以运用好这样
- 前言在默认情况下,Python的新类和旧类的实例都有一个字典来存储属性值。这对于那些没有实例属性的对象来说太浪费空间了,当需要创建大量实例的
- 看到别人用td和table标签模拟的办法: 设置table的上、左padding
- 前言首先线程和线程池不管在哪个语言里面,理论都是通用的。对于开发来说,解决高并发问题离不开对多个线程处理。我们先从线程到线程池,从每个线程的
- python的子进程嘛,就是利用python打开一个子进程(当然像是一句废话),但是可能和我们理解的不太一样。一:如何理解?我们可能的理解:
- 本文实例讲述了Python yield的用法。分享给大家供大家参考,具体如下:yield的英文单词意思是生产,刚接触Python的时候感到非
- 整本书围绕着一个叫做“CSS禅意花园”的网站展开,其实N久之前我在一份外国的关于CSS的在线教程上看到了这个网站的链接,可惜进去之后发现内容
- 一、虚拟环境概述Python应用程序通常会使用不在标准库内的软件包和模块。应用程序有时需要特定版本的库,修复特定的错误,或者可以使用库的过时
- 背景:python函数库scipy的quad、dblquad实现一维二维积分的范例。需要注意dblquad的积分顺序问题。代码:import
- 官方地址:gin-gonic.com/docs/安装与简单测试下载并安装Gin包,并导入引用$ go get -u github.com/g