我们使用Python可以编写很多提高工作和学习效率的小工具,在编写完之后,如果我们想将其分享给更多的人使用,那么最便捷的方法就是将其打包为可执行程序。

在Windows环境下,我们使用Pyinstaller这个第三方模块可以快速将Python程序打包为EXE格式后缀的可执行程序。但是其打包出来的要么是一个单独的EXE文件,要么是一个文件夹。在某些的场合,可能显得不是很正式,那么我们可能需要为程序制作一个安装程序。

下面,我们就来介绍一下在Windows环境下,对Python文件进行打包和制作安装包文件的方法。

文章首发州的先生博客:使用NSIS制作Python程序安装包 - 州的先生zmister.com

Python制作静默安装软件 python制作安装程序_Python制作静默安装软件

示例Python程序为文章《实战 | 如何用Python实现一个图形界面的文件内容搜索程序?》中所介绍的Python文件内容搜索器。

一、使用Pyinstaller打包Python程序

将Python文件打包为可执行文件,最好的方法莫过于使用第三方库——Pyinstaller。它支持将Python文件打包为单个的EXE文件或者是一个文件夹。

如何将Python文件打包成了单个的EXE文件,那么也就不需要再制作说明安装程序了,直接双击运行即可。但是打包出来的单个EXE文件体积可能会有点大,所以我们一般会选择将其打包为一个文件夹。

其命令如下所示:

pyinstaller -w xxx.py

我们使用上述命令对Python文件搜索器的py文件进行打包:

打包完成后,我们可以在dist文件夹下看到生成的程序文件夹,里面包含了运行我们的Python程序所需要的所有文件和启动文件,运行main.exe文件,可以看到我们使用PyQt5创建的图形界面窗口就显示出来了。

这样我们就可以对其进行安装包的制作了。有两种方法:文件夹压缩器:简单、快速,同时也简陋很多;

VNISEdit编译器,复杂、功能强大;

下面一一进行介绍。

二、使用NSIS文件夹压缩器

NSIS是一个小巧的文件夹压缩器,其与ZIP或RAR等压缩器不一样的地方在于其能够生成一个NSIS经典界面的自解压文件。

只需要简单的填写几个表单,我们就能得到一个EXE自解压文件安装包。下面是我们填写的表单:

我们设置了需要压缩的文件夹,指定了解压的路径为桌面,设置的快捷方式及其指向的文件等等。

点击【编译】按钮,程序就会自动对文件夹进行压缩:

最后得到了一个名为main.exe的自解压文件:

运行这个EXE文件,程序就会自动解压压缩的文件夹并在桌面上创建一个快捷方式:

这样,我们借助NSIS文件压缩器制作完成了Python程序的安装包。

三、使用NSIS VNISEdit编译器

上面使用NSIS文件夹压缩器制作的安装包操作虽然很简单,但是生成的安装包却显得不那么正规,如果我们需要像很多正式软件安装包一样,有很多确认步骤的,则需要使用到VNISEdit编译器。

首先,打开VNISEdit编译器,从【文件】中选择【新建脚本:向导】

进入到NSIS脚本向导中:

点击【下一步】,填写应用程序的基础信息:

继续【下一步】,知道安装程序的选项,基本上默认即可:

背景窗口基本上可以不设置:

然后设置应用程序的目录的授权信息:

继续指定应用程序文件,在这里我们添加程序所在的整个目录:

接着设置应用程序的图标信息等:

第7步也可以忽略不设置,在第8步设置卸载程序的相关信息:

最后保存并编译脚本,设置一个脚本名称后,会自动进行编译:

最后,我们得到了一个名为setup.exe的可执行安装文件:

运行这个文件,我们就可以对程序进行安装了:

同时,其还提供了卸载工具:

运行uninstall,可以快速卸载安装好的程序:

四、最后

以上就是我们使用NSIS对Python打包程序进行Windows安装包制作的两种方法,两种方法各有优势,如何选择,就看自己的需求了。