将python项目打包成exe与安装包的全过程
作者:General_zy 发布时间:2023-03-15 21:49:16
标签:python,打包,exe
一.打包Flask项目
1.1自己写个Flask
2.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文件设置一个自定义的图标 |
2.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文件夹
2.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
0
投稿
猜你喜欢
- 具体用法:1、<%= Counters.Get(CounterName) %>显示计数器的值。2、<% counterva
- 支持向量机可以用来拟合线性回归。 相同的最大间隔(maximum margin)的概念应用到线性回归拟合。代替最大化分割两类目标是,最大化分
- 锁定数据库的一个表 SELECT * FROM table WITH (HOLDLOCK) 注意: 锁定数据库的一个表的区别 SELECT
- 本文实例总结了Python字典常见操作。分享给大家供大家参考,具体如下:简单的字典:字典就是键值对key-value组合。#字典 键值对组合
- 一、前言近期在实际项目中使用到了PID控制算法,于是就该算法做一总结。二、PID控制算法详解2.1 比例控制算法例子: 假设一个水缸,需要最
- 本文实例讲述了Python协程 yield与协程greenlet简单用法。分享给大家供大家参考,具体如下:协程协程,又称微线程,纤程。英文名
- 1,FCKeditor 编辑器最新版本: 2.3.1站点:http://www.fckeditor.net 演示:http://w
- 本文实例为大家分享了python字符串的操作方法,供大家参考,具体内容如下1.去除空格str.strip():删除字符串两边的指定字符,括号
- Python操作注册表步骤之1.打开注册表对注册表进行操作前,必须打开注册表。在Python中,可以使用以下两个函数:RegOpenKey和
- 本文中介绍的系统优化,主要针对前端和后台这两方面(后台方面主要对SQL语句和数据存储进行了优化),下文中我们将介绍一些优化技巧和经验。技巧:
- Python命令启动Web服务器实例详解利用Python自带的包可以建立简单的web服务器。在DOS里cd到准备做服务器根目录的路径下,输入
- 一、多线程共享全局变量首先我们来回忆下在函数中修改全局变量的情况。在一个函数中,对全局变量进行修改的时候,到底是否需要使用 global 进
- 问题我试图打印some_cell.font.color.rgb并得到各种结果。对于一些人,我得到了我想要的东西(比如“ FF000000”)
- 思路:<img alt="" src="/img/图片真实地址" ></img&g
- 对方用<script language="javascript"> var location="&
- 本文实例讲述了Python正则表达式实现截取成对括号的方法。分享给大家供大家参考,具体如下:strs = '1(2(3(4(5(67
- 一、自定义分页1、基础版自定义分页data = []for i in range(1, 302): tmp = {"i
- 在登陆界面中,通常,最重要的部分为登陆的Form表。一个非常棒的提升体验的做法是,在载入页面时自动聚焦到第一个提供用户输入的表单框,让用户不
- 以前大家谈了很多有关打开数据库连接安全的问题,现在我再提出一种思路:使用activex dll来保护你的代码。(既可以不用为使用共享的加密软
- python 2.6编写,自己瞎写的,备用''' Export and Import ElasticSe