首页 后端 Python 正文

快速将多个py文件及其他文件打包为exe可执行文件

   最近在学习PYQT5,感觉还挺有趣的,顺便记录一下自己的打包记录,也就当学习笔记啦,如果刚好也在学习python打包的小伙伴可以学一学哦。    觉得内容有帮助可以前往gzh【Python编程学习圈】了解更多技术干货知识,还有大量资料教程可以领,欢迎感兴趣的朋友前往了解。    1、准备好打包文件    首先准备好将

最近在学习PYQT5,感觉还挺有趣的,顺便记录一下自己的打包记录,也就当学习笔记啦,如果刚好也在学习python打包的小伙伴可以学一学哦。

觉得内容有帮助可以前往gzh【Python编程学习圈】了解更多技术干货知识,还有大量资料教程可以领,欢迎感兴趣的朋友前往了解。

1、准备好打包文件

首先准备好将要打包的工程文件(/夹)。在这个文件下,我们将frame_main.py当做主程序。

快速将多个py文件及其他文件打包为exe可执行文件  第1张

2、下载安装Pyinstaller

在 cmd 中进入我们当前的python环境中,并进入当前项目的文件夹下:

快速将多个py文件及其他文件打包为exe可执行文件  第2张

下载安装Pyinstaller

快速将多个py文件及其他文件打包为exe可执行文件  第3张

3、生成.spec文件

.spec文件为安装配置文件,作用是对可执行文件进行配置!因为我们把frame_main.py 当做主程序,所以输入如下命令

pyi-makespec frame_main.py

快速将多个py文件及其他文件打包为exe可执行文件  第4张

可以看到此时文件夹下生成了一个 frame_main.spec 文件,其内容如下:

快速将多个py文件及其他文件打包为exe可执行文件  第5张

# -*- mode: python ; coding: utf-8 -*-


block_cipher = None


a = Analysis(['frame_main.py'],
             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,
          [],
          exclude_binaries=True,
          name='frame_main',
          debug=False,
          bootloader_ignore_signals=False,
          strip=False,
          upx=True,
          console=True,
          disable_windowed_traceback=False,
          target_arch=None,
          codesign_identity=None,
          entitlements_file=None )
coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=False,
               upx=True,
               upx_exclude=[],
               name='frame_main')

4、配置.spec文件

我们需要对其进行配置,包括文件和静态资源(图片等),

快速将多个py文件及其他文件打包为exe可执行文件  第6张

在Analysis 加入所有py文件,datas中加入所有静态资源。还有exe文件的图标,记住图标用绝对路径。

快速将多个py文件及其他文件打包为exe可执行文件  第7张

5、生成exe文件

输入命令:

pyinstaller -F -w frame_main.spec

(备注:-F是将一个文件打包而成的,-w是运行时不出现黑色窗口的)

打包完成之后会在当前目录文件夹下生成一个dist文件夹,打开之后会发现我们的 exe 文件。

快速将多个py文件及其他文件打包为exe可执行文件  第8张

双击 exe 文件,竟然会发现怎么还是会出现黑色窗口呢,也就是控制台。

经过我师弟的点拨,终于发现了问题的所在,将spec文件中的 :

console = True
改为:
console = False

快速将多个py文件及其他文件打包为exe可执行文件  第9张

继续运行,再次打包。

pyinstaller -F -w frame_main.spec

双击 exe 文件

快速将多个py文件及其他文件打包为exe可执行文件  第10张

这样就不会出现黑框啦.....

原文:https://juejin.cn/post/7099632026827833352
打赏
海报

本文转载自互联网,旨在分享有价值的内容,文章如有侵权请联系删除,部分文章如未署名作者来源请联系我们及时备注,感谢您的支持。

转载请注明本文地址:https://www.shouxicto.com/article/4986.html

相关推荐

Python 构建 REST 风格接口 API

识别资源构建 REST API 时,要采取的第一步是确定 API 将管理的资源。通常将这些资源描述为复数名词,如customers 、events 、 或transactions 。在 Web 服务中...

Python 2022.06.24 0 60

眼前一亮!Python 高手都是这样处理数据的!

   工欲善其事,必先利其器!我们想要更轻松更有效率地开发,必须学会一些“高级”技能。前不久看到一位 Python 高僧的代码,其中使用了一个短小精悍的模块,我认为还蛮有用的,今天分享给大家。    ...

Python 2022.06.09 0 154

Python Http请求浅析

Python Http请求浅析

   最近在学习PYQT5,感觉还挺有趣的,顺便记录一下自己的打包记录,也就当学习笔记啦,如果刚好也在学习python打包的小伙伴可以学...

Python 2022.06.08 0 144

发布评论

ainiaobaibaibaibaobaobeishangbishibizuichiguachijingchongjingdahaqiandaliandangaodw_dogedw_erhadw_miaodw_tuzidw_xiongmaodw_zhutouganbeigeiliguiguolaiguzhanghahahahashoushihaixiuhanheixianhenghorse2huaixiaohuatonghuaxinhufenjiayoujiyankeaikeliankouzhaokukuloukunkuxiaolandelinileimuliwulxhainiolxhlikelxhqiuguanzhulxhtouxiaolxhwahahalxhzanningwennonuokpinganqianqiaoqinqinquantouruoshayanshengbingshiwangshuaishuijiaosikaostar0star2star3taikaixintanshoutianpingtouxiaotuwabiweifengweiquweiwuweixiaowenhaowoshouwuxiangjixianhuaxiaoerbuyuxiaokuxiaoxinxinxinxinsuixixixuyeyinxianyinyueyouhenghengyuebingyueliangyunzanzhajizhongguozanzhoumazhuakuangzuohenghengzuoyi
支付宝
微信
赞助本站