一、安装
pip install pyinstaller
二、打包
1、打开cmd,切换到py脚本目录下,执行 pyinstaller -F **.py, 最后输出Building EXE from EXE-00.toc completed successfully.即打包成功
2、参数说明
-
-F,将所有内容打包到一个exe中,一般都使用这个参数。如:pyinstaller -F xx.py
-
-c,此为windows系统的默认选项,使用这个参数,运行时会有一个黑窗控制台。
-
-w,使用这个参数,运行时不会出现黑窗控制台。如:pyinstaller -F -w xx.py
-
-i,用于生成自定义图标的exe,参数后面加上ico图片的地址。如:pyinstaller -F -i xx.ico xx.py
PS F:\pyexe> pyinstaller -F .\package.py
62 INFO: PyInstaller: 3.6
62 INFO: Python: 3.6.5
62 INFO: Platform: Windows-10-10.0.18362-SP0
75 INFO: wrote F:\pyexe\package.spec
75 INFO: UPX is not available.
75 INFO: Extending PYTHONPATH with paths
['F:\\pyexe', 'F:\\pyexe']
75 INFO: checking Analysis
75 INFO: Building Analysis because Analysis-00.toc is non existent
75 INFO: Initializing module dependency graph...
75 INFO: Caching module graph hooks...
75 INFO: Analyzing base_library.zip ...
2344 INFO: Caching module dependency graph...
2429 INFO: running Analysis Analysis-00.toc
2431 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
required by d:\develop\python\python36\python.exe
2685 INFO: Analyzing F:\pyexe\package.py
2685 INFO: Processing module hooks...
2685 INFO: Loading module hook "hook-encodings.py"...
2763 INFO: Loading module hook "hook-pydoc.py"...
2763 INFO: Loading module hook "hook-xml.py"...
2950 INFO: Looking for ctypes DLLs
2950 INFO: Analyzing run-time hooks ...
2950 INFO: Looking for dynamic libraries
3013 INFO: Looking for eggs
3013 INFO: Using Python library d:\develop\python\python36\python36.dll
3013 INFO: Found binding redirects:
[]
3032 INFO: Warnings written to F:\pyexe\build\package\warn-package.txt
3060 INFO: Graph cross-reference written to F:\pyexe\build\package\xref-package.html
3065 INFO: checking PYZ
3065 INFO: Building PYZ because PYZ-00.toc is non existent
3066 INFO: Building PYZ (ZlibArchive) F:\pyexe\build\package\PYZ-00.pyz
3376 INFO: Building PYZ (ZlibArchive) F:\pyexe\build\package\PYZ-00.pyz completed successfully.
3376 INFO: checking PKG
3376 INFO: Building PKG because PKG-00.toc is non existent
3376 INFO: Building PKG (CArchive) PKG-00.pkg
4755 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
4755 INFO: Bootloader d:\develop\python\python36\lib\site-packages\PyInstaller\bootloader\Windows-64bit\run.exe
4755 INFO: checking EXE
4755 INFO: Building EXE because EXE-00.toc is non existent
4755 INFO: Building EXE from EXE-00.toc
4755 INFO: Appending archive to EXE F:\pyexe\dist\package.exe
4773 INFO: Building EXE from EXE-00.toc completed successfully.
执行成功后,会生成几个文件夹:
可执行exe在dist文件夹中
双击即可运行。
参考文章: