python项目打包成exe可执行文件(pyinstaller库)

您所在的位置:网站首页 pyinstaller打包命令 python项目打包成exe可执行文件(pyinstaller库)

python项目打包成exe可执行文件(pyinstaller库)

#python项目打包成exe可执行文件(pyinstaller库)| 来源: 网络整理| 查看: 265

前言:才入职新公司;进来工作内容,就是将之前的python脚本项目打包成.exe可执行文件;一来方便不同岗位的同事之间使用,二来源码信息不会改动和泄漏。

正因为python具有丰富的第三方库,目前已有数万之多;这里用到的是 'pyinstaller'库;

正文:

两种情况:Ⅰ、单独一个py文件打包成exe,Ⅱ、整个项目或者多个py打包成exe;

一、Python环境(不做介绍)

二、win+r 输入md,进入’命令提示符‘

在命令窗口安装pyinstaller包:pip install pyinstaller

三、安装好pyinstaller库后

Ⅰ、单独一个py文件打包成exe

我这里以打包buildsDemo项目为例,将main.py打包成.exe可执行文件

①:进入需要打包成exe的main.py文件夹下输入'cmd' 进入'命令提示符中';

②:输入:pyinstaller -F -i 013.ico main.py

-F:打包后只生成单个exe格式文件,启动较慢;

-D:默认选项,创建一个目录,包含exe文件以及大量依赖文件,启动较快;

-c:默认选项,使用控制台(就是类似cmd的黑框);

-w:不使用控制台;

-p:添加搜索路径,让其找到对应的库;(多数图片格式都行)

-i:改变生成程序的icon图标。

出现:Building EXE from EXE-00.toc completed successfully.

执行成功后,生成两个文件夹(build、dist)和一个.spec文件(main.spec)

dist文件夹下,就是已生成好的exe文件了

Ⅱ、整个项目或者多个py打包成exe;

注意:多个文件打包方法==》先打包一个py;在修改打包后生成的spec文件;

以上述Ⅰ中为例前提:

①:删除build、dist文件夹;只保留main.spec文件

②:编辑main.spec;将其它需要打包的py加入到 Analysis中:

===修改前:

# -*- mode: python ; coding: utf-8 -*- block_cipher = None a = Analysis( [main.py], ...省略相同代码... ) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE( ...省略相同代码... console=True,     ...省略相同代码... )

===修改后:

③:注意:如果项目有界面,不需要黑色窗口,需将main.spec文件中的console=true 改为console = False(默认为True)

# -*- mode: python ; coding: utf-8 -*- block_cipher = None py_files = [ 'tools\\add_ip.py', 'tools\\get_data.py', 'log.py', 'main.py', 'utils.py', ] a = Analysis( py_files, pathex=[], binaries=[], datas=[], hiddenimports=[], hookspath=[], hooksconfig={}, runtime_hooks=[], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False, ) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE( pyz, a.scripts, a.binaries, a.zipfiles, a.datas, [], name='main', debug=False, bootloader_ignore_signals=False, strip=False, upx=True, upx_exclude=[], runtime_tmpdir=None, console=False, disable_windowed_traceback=False, argv_emulation=False, target_arch=None, codesign_identity=None, entitlements_file=None, icon=['013.ico'], )

④:修改完成后,执行命令:pyinstaller main.spec;执行成功后

再次生成build、dist文件夹。dist下的exe便是项目的exe文件了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3