pyInstaller 生成exe文件

环境配置:

pycharm
windows 10

本次使用pyinstaller生成exe文件使用的是pycharm自带的Terminal ,没有安装pycharm的小伙伴可以使用windows的cmd窗口,Linux系统的小伙伴也可以使用terminal使用,原理是一样的。

步骤一:安装pyinstaller

在pycharm中安装pyinstaller有两种方法:(推荐方法二,图形界面贼香)

方法一:打开命令行窗口:打开pycharm,最下面有一个terminal选项,点击可以进入命令行模式,如图。
pyinstaller生成exe 图形界面
使用pip 安装:
pyinstaller生成exe 图形界面

方法二:使用pycharm中的setting–>project–>project interpreter,直接安装pyinstaller模块
pyinstaller生成exe 图形界面
pyinstaller生成exe 图形界面

步骤二:生成exe文件

在pycharm 的terminal窗口中,cd到你你需要的目录,这个目录存放需要打包的python文件。

在该目录中执行pyinstaller -F -w ./XXX.py

XXX.py表示你的程序执行入口,-w表示不需要执行窗口(不需要使用黑窗口输入数据)
pyinstaller生成exe 图形界面
然后该目录下会多出build,dist两个文件夹,以及一个.spec文件

dist文件下的exe文件就是生成的exe文件,直接在存储盘中找到双击就应该可以运行了。如果能运行后面的就不用看了!!!!(事实上,一般大点的都不能运行)

pyinstaller生成exe 图形界面

步骤三:调试

在步骤二的基础上,继续执行pyinstaller -F ./XXX.py

这次执行不需要添加-w,我们需要命令窗口文件查看发生了什么错误!

点击exe文件,会出现一个黑窗口,里面有错误信息。建议打开手机录像功能,这个窗口出现的时间只有几秒钟,需要手速。

pyinstaller生成exe 图形界面

步骤二有一个spec文件,该文件是生成exe文件的一些配置信息,上面提示缺少模块,可以直接在spec配置文件中crud。

上面的窗口提示缺少一个“pkg_resources.py2_warn”模块,可以直接在hiddenimports中添加。

pyinstaller生成exe 图形界面
pyinstaller生成exe 图形界面
terminal中执行pyinstaller -F ./XXX.spec,重新生成exe文件。

xxx.spec即为生成的配置文件,pyinstaller也可以直接对配置文件使用。

双击exe文件,重新查看错误信息。

pyinstaller生成exe 图形界面

上面的信息提示我自己写的一个模块XX_v4没有加载进去,pyinstaller 对于自身模块可以使用pyinstaller -p D://XXXX进行加载,但是我为了省事直接在spec配置文件里面修改了。

pyinstaller生成exe 图形界面

对自身模块进行重新加载后的配置文件如图。

pyinstaller生成exe 图形界面
在pathes属性进行自身模块的载入,这里需要注意两点:

1.加载的是绝对路径

2.加载的是包含该模块的目录,也就是该模块的上一级目录。(这里我错了好多次,以为加载的是该模块,然后就直接包这个模块的目录写上去了,怎么也不对,555555)

然后继续terminal中执行pyinstaller -F ./XXX.spec,重新生成exe文件。

到这里,程序就可以运行了!!!!!!!!!!!!哈哈哈哈哈哈!!!!!
pyinstaller生成exe 图形界面
但是,这只是我们调试的结果,程序可以成功运行但是有一个黑窗口,比较讨厌,只需要在spec配置文件中最下面的console属性True改为False,再载terminal中执行pyinstaller -F ./XXX.spec,重新生成exe文件即可。

pyinstaller生成exe 图形界面
双击exe文件,大功告成!
pyinstaller生成exe 图形界面

相关文章: