即开即用,封装 Flask 项目为 exe 文件实操步骤
见字如面,朋友们!
嗨,这里是 AIGC 创意人_竹相左边!
正如你们所知,我正在通过 AI 自学软硬件工程师,目标是手搓一台可回收火箭玩具!
最近,我被《流浪地球 2》中马兆的那句“没有硬件支撑,你破解个屁”深深打动——硬件和软件的结合,才是硬核的灵魂!
今天,我想和大家分享一个实用技巧:如何将我的 Flask 项目封装成一个即开即用的 .exe 文件,让没有编程知识的同事也能轻松使用。
跟着我一步步操作,打造属于我们的“软件硬件之光”吧!
一、为什么要封装为 .exe?
在开发 Flask 项目时,我们通常需要在 Python 环境中运行,依赖如 Flask、Pillow 等库。对于编程小白或非技术同事来说,配置环境、安装依赖简直是“天坑”。封装成 .exe 文件的好处在于:
- 无需安装 Python:所有依赖打包到一起,双击运行即可。
- 跨平台友好:Windows 用户直接使用(Mac/Linux 可考虑其他工具)。
- 即开即用:就像火箭点火,启动即飞!
二、准备工作与工具
在开始之前,确认你的开发环境已准备好:
- Python 环境:确保已安装 Python 3.x(我用的是 3.9,稳定得很!)。
- PyInstaller:安装命令:pip install pyinstaller,这是我们封装的“火箭引擎”。
- 项目文件:包括 app.py、routes、templates、static 和 utils 文件夹。
三、整代码以支持打包
我们需要修改 app.py,添加以下功能:
- 检测是否以打包形式运行(PyInstaller 会在运行时设置 sys._MEIPASS)。
- 正确设置 templates 和 static 文件夹路径。
- 启动程序后自动打开浏览器。
四、准备打包环境
- 确保 PyInstaller 已安装:在你的开发环境中,安装 PyInstaller:
pip install pyinstaller
- 生成 requirements.txt:确保所有依赖都被记录,运行以下命令生成 requirements.txt:
pip freeze > requirements.txt
- 项目结构:确认你的项目目录结构如下:
五、使用 PyInstaller 打包
- 进入项目目录:
cd D:\20250219\ai_work\jpg2pdf
- 运行 PyInstaller 打包命令: 使用 --onefile 选项打包成单个 .exe 文件,同时使用 --add-data 包含 templates 和 static 文件夹。
pyinstaller --onefile --add-data "templates;templates" --add-data "static;static" app.py
- Windows 系统下,路径分隔符使用 ;。
- 打包结果: 打包完成后,dist 文件夹中会生成 app.exe。
六:测试打包后的 .exe
- 将 app.exe 复制到桌面: 复制 dist\app.exe 到你的桌面或其他测试目录。
- 双击运行 app.exe:
- 程序会启动 Flask 服务器。
- 默认会自动打开浏览器,访问 http://127.0.0.1:5000。
七、小贴士与优化
- 添加图标:用 --icon app.ico 自定义 .exe 图标。
- 隐藏命令行:加 --noconsole 让界面更友好(但保留调试用)。
- 问题排查:如果运行失败,检查是否有缺少的 DLL(如 VCRUNTIME140.dll),建议同事安装 Microsoft Visual C++ Redistributable。