python项目打包成exe可执行文件(pyinstaller库) |
您所在的位置:网站首页 › pyinstaller打包命令 › python项目打包成exe可执行文件(pyinstaller库) |
前言:才入职新公司;进来工作内容,就是将之前的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 |