前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python Flask项目打包成exe文件

Python Flask项目打包成exe文件

原创
作者头像
软件架构师Michael
发布2023-04-12 11:44:41
2.2K0
发布2023-04-12 11:44:41
举报
文章被收录于专栏:软件工程师Michael

说明:

# Python是解释型语言,我们写的Flask或Django项目如果部署,源码可能会泄露,因此我们可以把项目打包成exe,来保护源码# 需要用到工具 -pyinstaller:把python项目打包成不同平台的可执行文件 -nsis:NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序,它提供了安装、卸载、系统设置、文件解压缩等功能。这如其名字所指出的那样,NSIS 是通过它的脚本语言来描述安装程序的行为和逻辑的

1.安装下载pyinstaller

添加国内镜像源,安装更加顺畅,此处添加豆瓣源

pip3 install pyinstaller

-i http://pypi.doubanio.com/simple --trusted-host pypi.doubanio.com

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文件设置一个自定义的图标

tips:实际部署应用过程中,常用 -D方式打包,这样资源文件都已经包括了。但也有使用-F方式,最终只有一个.exe文件的输出结果。

2.进入到项目路径下,执行

# 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文件夹

【小结】:把开发完成的应用程序打包,部署到指定的环境,或者供其他应用程序来调用,属于工程化能力范畴。在交付项目较多的团队,可以考虑使用更加灵活的工具去完成。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档