您的位置:首页 > 编程语言 > Python开发

Windows下PyInstaller的使用教程

2015-09-17 14:51 351 查看
本博客与RayXXZhang的博客保持同步更新,转载请注明来自RayXXZhang的博客-Windows下PyInstaller的使用教程

直接使用Python开发的软件时有许多不方便的地方,如需要安装特定的Python环境,需要安装依赖库。为了便于部署,需要将Python源代码编译成可执行文件,编译后的可执行文件就能脱离python环境运行了。

安装

将py编译成可执行文件需要使用PyInstaller,需要注意,从百度搜索到的下载链接来自SourceForge,而PyInstaller的开发似乎已经转到Github上去了,因此从SourceForge上下载的版本不是最新的。

目前最新的PyInstaller版本是2.1,最方便的安装方式是通过
pip
使用如下命令安装:

pip install pyinstall


当然,也可以通过下载源代码编译方式安装:

python setup.py install


安装完成后,使用如下命令可以确认版本号:

pyinstaller --version


如果显示
Error: Python 2.6+ on Windows support need pywin32
,则说明当前没有安装pywin32,安装后即可正常运行PyInstaller。

安装pywin32时需要注意,pywin32的版本和本机Python位数和版本必须相同。

简单使用

最简单的使用方式是运行
pyinstaller myscript.py
来生成可执行文件,其中
myscript.py
是需要编译成可执行文件的源代码。

通过这种方式生成的可执行文件默认位于当前文件夹的dist目录下的myscript目录中,该目录下除了有exe文件外,还有若干个其他文件,这些文件都是运行时必须的。

编译完成后可以删除build文件夹,该文件夹存放的是编译过程中的生成的临时文件

如果希望编译出的exe文件不依赖其他文件,可以添加
-F
选项:

pyinstaller -F myscript.py


编译出的单独的exe文件在启动时速度上略慢于编译成文件夹方式。因为在执行单独的exe时会将资源先释放到临时文件夹中再执行。

常用选项

–distpath=path_to_executable

指定生成的可执行文件存放的目录,默认存放在dist目录下

–workpath=path_to_work_files

指定编译中临时文件存放的目录,默认存放在build目录下

–clean

清理编译时的临时文件

-F, –onefile

生成单独的exe文件而不是文件夹

-d, –debug

编译为debug模式,有助于运行中获取日志信息

–version-file=version_text_file

为exe文件添加版本信息,版本信息可以通过运行
pyi-grab_version
加上要获取版本信息的exe文件的路径来生成,生成后的版本信息文件可以按需求修改并作为
--version-file
的参数添加到要生成的exe文件中去

i <FILE.ico>, -i <FILE.exe,ID>, –icon=<FILE.ico>, –icon=<FILE.exe,ID>

为exe文件添加图标,可以指定图标路径或者从已存在的exe文件中抽取特定的ID的图标作为要生成的exe文件的图标

另外,还可以通过spec文件来生成可执行文件,运行
pyi-makespec options script [script ...]
可以生成spec文件,修改spec文件后执行:

pyinstaller specfile

或者

pyi-build specfile


就可以生成可执行文件了。

spec文件方式生成可执行文件提供了更多的定制选项,包括自定义python库的位置,要打包的其他文件路径等等。

更多

更多的使用选项及错误解决方法可以参照PyInstaller的官方帮助文档
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python