Python pyinstaller 打包 exe 程序步骤和添加依赖文件方法

Lgq · 2020年12月21日 · 最后由 雨花石 回复于 2021年05月27日 · 4887 次阅读

hello,各位骚年,大家好,我是骚强,或许我们并不是专业的程序员,但是却可以通过 python 来提高我们的工作效率,减少加班时间,让代码替我们完成一些重复的工作,节省下来的时间去泡个妹子,牵牵小手不香吗

在这里插入图片描述
话不多说,马上进入 pyinstaller 打包工具教程,隔壁家小东女朋友叫我待会一起去吃饭呢。。。。。

1、安装 pyinstaller 库。命令行输入以下命令,如图显示是我已经装过了:

pip install pyinstaller

在这里插入图片描述
2、pyinstaller 的打包机制:
python 脚本的运行离不开 python 解释器,把脚本打包成 exe 可执行文件时,pyinstaller 会将 python 解释器和脚本一起打包,同时把需要用到的第三方库和依赖包一并打入到 exe 文件中,下面我就以最近写的一款装包工具为例,简述一下我的打包过程。

3、打包命令:

pyinstaller-F [main.py]

这条命令指的是将以 main.py 为主程序的脚本打包为单独一个 exe 文件,-F 参数表示覆盖打包,无论打多少次包都会是最新的。你可以选择 cmd 命令行进行操作,也可以使用 pycharm 的 Terminal 端口进行,我使用的是 Terminal。如图。
在这里插入图片描述
运行完毕后,会看到 build,dist,和.spec 文件生成。dist 里面的 exe 文件就是刚刚生成的可执行文件,这样简单快捷的打包就完成啦。

4、添加导包外的一些依赖文件。
像第 3 步这种情况是程序中不需要依赖外部文件的,假如程序逻辑中需要依赖一些文件,但 pyinstaller 并不会将自动把这些文件帮你打包进去,比如,一个第三方库中有一段程序需要去使用 public.xml 文件,当打包完成后,这个文件是不会自动打包进去的,那该怎么办呢?
在这里插入图片描述
别急,pyinstaller 为我们提供了参数配置文件,也就是刚刚生成的.spec 文件,我们只需要再 datas 中配置需要打包的文件即可,比如

datas=[('D:\\python3.6.5\\Lib\\site-packages\\androguard\\core\\resources\\public.xml','androguard\\core\\resources')

表示的是将 public.xml 文件打包到 androguard\core\resources 目录下
在这里插入图片描述
其他的一些参数配置请自行百度,如有时需要让 pyinstaller 不打包某些用不到的模块,可通过在 excludes=[] 中添加此模块实现,如 excludes=['xxx']。

5、.spec 打包:这样修改后我们就可以使用命令进行再次打包啦,打包完成后打开软件,发现需要用到依赖文件相关功能就正常啦。

pyinstaller -D xxx.spec 

6、ok,这次的 pyinstaller 打包就分享到这里了,有什么疑问欢迎在评论区留言,话不多说,小东女朋友叫我去吃饭了。
在这里插入图片描述

共收到 1 条回复 时间 点赞

隔壁老王你好,我是晓东。请问一下 pathex 和 binaries 这两项是怎么定义的

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册