如何通过pyinstaller将python文件打包为可执行exe文件

PyInstaller

PyInstaller 是一个十分有用的第三方库,可以用来打包 python 应用程序,打包完的程序就可以在没有安装 Python 解释器的机器上运行了。

它能够在 Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。

PyInstaller 支持 Python 2.7 / 3.4-3.7。可以在 Windows、Mac OS X 和 Linux 上使用,但是并不是跨平台的,而是说你要是希望打包成 .exe 文件,需要在 Windows 系统上运行 PyInstaller 进行打包工作。

下面我们以Windows为例来进行程序的打包工作。

安装

pip install pyinstaller # 或者python -m pip install pyinstaller

如何通过pyinstaller将python文件打包为可执行exe文件_第1张图片

检测是否安装成功:

pyinstaller --version

使用

这里我写了一个爬取网页新闻的脚本NewsSpider

pyinstaller -F NewsSpider.py

其中,-F表示打包成单独的 .exe 文件,这时生成的 .exe 文件会比较大,而且运行速度回较慢。仅仅一个 NewsSpider 程序,生成的文件就 5MB 大。

另外,使用-i还可以指定可执行文件的图标;-w表示去掉控制台窗口,这在 GUI 界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!

PyInstaller 会对脚本进行解析,并做出如下动作:

1、在脚本目录生成 NewsSpider.spec 文件;

2、创建一个 build 目录;

3、写入一些日志文件和中间流程文件到 build 目录;

4、创建 dist 目录;

5、生成可执行文件到 dist 目录;


如何通过pyinstaller将python文件打包为可执行exe文件_第2张图片

准备一个图片,作为exe的图标:

ns.ico

注意图片格式是ico的,大小为32*32,不要太大。没有的话,可以在网上免费转格式。http://www.favicon-icon-generator.com/favicon

把NewsSpider.py和ns.ico放到一个目录里面

pyinstaller -F -i ns.ico NewsSpider.py

执行结果


如何通过pyinstaller将python文件打包为可执行exe文件_第3张图片

你可能感兴趣的:(如何通过pyinstaller将python文件打包为可执行exe文件)