pyinstaller 库的使用
PyInstaller是一个十分有用的第三方库,它能够在Windows、Linux、Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包,Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个独立文件方便传递和管理。PyInstaller 需要在命令行(控制台)下用pip 工具安装,如下:
pip install pyinstaller
或 pip3 install pyinstaller
pip会自动安装这个第三方包需要的依赖模块(比如,这里帮我们下载了pypiwin32这个依赖)
安装完成后,我们可以在如下路径找到Pyinstaller应用程序。
跟pip在同一个目录
PyInstaller 的官方网站网址为 http://www.pyinstaller.org/ 。PyInstaller 库会自动将 PyInstaller 命令安装到 Python 解释器目录中,与 pip 或 pip3 命令路径相同,因此可以直接使用。使用PyInstaller 库十分简单,
命令如下:
pyinstaller test.py
或: pyinstaller D:\myprog\test.py
执行完毕后,源文件所在目录将生成 dist 和 build 两个文件夹。其中,build 目录是 pyinstaller 存储临时文件的目录,可以安全删除。最终的打包程序在 dist 内部的 test 目录中。目录中其他文件是可执行文件 test.exe 的动态链接库。
可以通过-F 参数对 Python 源文件生成一个独立的可执行文件,
如下:pyinstaller
-
F test.py
执行后在 dist 目录中出现了 test.exe 文件,没有任何依赖库,执行它即可。使用 PyInstaller 库需要注意以下问题:文件路径中不能出现空格和英文句号(.);源文件必须是 UTF-8 编码,暂不支持其他编码类型。采用 IDLE编写的源文件都保存为 UTF-8 编码形式,可直接使用。PyInstaller 有一些常用参数,如下所示:
-h, --help 查看帮助
-v, --version 查看 PyInstaller 版本
--clean 清理打包过程中的临时文件
-D, --onedir 默认值,生成 dist 目录
-F, --onefile
在 dist 文件夹中只生成独立的打包文件第
-p DIR, --paths DIR 添加 Python 文件使用的第三方库路径
这个指令后面可以增加pyinstaller搜索模块的路径。因为应用打包涉及的模块很多。这里可以自己添加路径。不过,site-packages目录下都是可以被识别的,不需要再手动添加
-i <.ico or .exe,ID or .icns>,--icon <.ico or .exe,ID or .icns >
指定打包程序使用的图标(icon)文件
PyInstaller 命令不需要在 Python 源文件中增加代码,只需要通过命令行进行打包即可。-F 参数最为常用,对于包含第三方库的源文件,可以使用-p 添加第三方库所在路径。如果第三方库由 pip 安装且在Python 环境目录中,则不需要使用-p 参数。
例子:
pyinstaller Hello.py 已成功实现将python文件转换为exe文件
pyinstaller -w main.py -p d:\myprog\test; d:\myprog\test\lib 已成功实现将多个python文件转换为exe文件-包含库文件(-w的目的是运行程序的时候不会出现dos窗口)多个路径可以使用;隔开。
pyinstaller -F -w main.py -p d:\myprog\test 已成功实现将多个python文件转换压缩为单个exe文件-这个才是最需要的(-w的目的是运行程序的时候不会出现dos窗口)
pyinstaller -F -w -i pic.ico main.py -p d:\myprog\test 已成功实现将多个python文件转换压缩为单个exe文件且在exe文件前面添加一个图标-这个才是最需要的(-w的目的是运行程序的时候不会出现dos窗口)