一. Pyinstaller 使用指南

python打包exe如何包含库(将Python打包成exe应用程序)(1)

1.简介

Pyinstaller 是 python 的打包工具,将 源码.py 生成 exe执行文件,然后将 exe文件 部署到 目标主机 上即可,本文以windows为例,同时它也是支持跨平台打包部署的:

2.安装命令

初次安装

pip install -U pyinstaller

升级

pip install --upgrade pyinstaller

查看版本

pyinstaller --version

3.打包命令

Using PyInstaller — PyInstaller 5.0.1 documentation

常用参数说明:

-F 打包成一个exe应用程序。

-D 打包成一个文件夹。

-w 去掉exe应用程序执行时的dos窗口。

-n 设置生成的exe应用程序名称。

-p 设置包的路径。以 : 分隔。

--add-datas 设置静态路径。格式:欲打包的源路径 ; 打包后的目标路径 。路径之间以 : 分隔。

-i 生成的exe图标。

最后 空格 加上需要打包的python源文件。

打包成一个exe应用程序

pyinstaller -F your_program.py

打包成一个文件夹

pyinstaller -D your_program.py

二. Pyinstaller实战 - 以我的可视化大屏为例

1. 创建 打包.bat 脚本

pyinstaller -F --add-data static;static -p . main.py

python打包exe如何包含库(将Python打包成exe应用程序)(2)

2. 运行 打包.bat 脚本

python打包exe如何包含库(将Python打包成exe应用程序)(3)

3. 查看 main.exe 应用程序

生成的 exe 在dist 目录下。

python打包exe如何包含库(将Python打包成exe应用程序)(4)

4. 启用 main.exe 应用程序

双击启动服务:

python打包exe如何包含库(将Python打包成exe应用程序)(5)

5. 浏览器访问

python打包exe如何包含库(将Python打包成exe应用程序)(6)

三. 问题总结

1. 缺少依赖包 No module named 'xxx'

python打包exe如何包含库(将Python打包成exe应用程序)(7)

初始打包命令

pyinstaller -F main.py

解决方法:设置 -p 依赖包目录

pyinstaller -p . -F main.py

2. 无法打开 Flask 的静态目录文件

python打包exe如何包含库(将Python打包成exe应用程序)(8)

python打包exe如何包含库(将Python打包成exe应用程序)(9)

解决方法:设置 --add-datas 静态路径

pyinstaller -F --add-data static;static -p . main.py

,