pyinstaller 打包python程序成exe安装包

环境版本

背景:需要将自动化脚本给没有安装任何环境的测试人员使用,使用pyinstall 将程序打包,
pyinstaller版本为:3.5
python 版本:3.7.3
系统版本:Win10
脚本及目录结构


install.png

运行指令

在脚本目录下打开cmd窗口, 找到pyinstaller 的目录,一般默认安装在 C:\Users\用户名\AppData\Local\Programs\Python\Python37-32\Scripts\pyinstaller.exe
运行如下:

image.png

运行结束后,会在当前目录下生成build, dist, auto_new_windows.spec

s

具体关于生成的文件以及参数不做描述,一搜一大堆
参考链接:https://blog.csdn.net/BearStarX/article/details/81054134

运行完需要解决的问题

1. 运行时出现No Module Named**** 或者 Module Not Found 错误时

错误如下:


image.png

解决

将报错打印出的Module 放入刚刚生成的spec 文件auto_new_windows.spec中, 如 numpy.random.common , 然后将dist, build 文件夹删除,重新在本地目录打开cmd 窗口,使用sepc 文件再重新打包py脚本。然后重新运行exe, 缺什么,在spec 文件中的这个位置添加什么,重复上面的步骤,直到不报错

image.png

image.png

2. 运行时的文件依赖

由于脚本运行时需要很多依赖的文件,文件夹,所以需要将脚本以及所用到的依赖文件全部copy 到dist 文件夹中,也就是和exe 程序包同一目录。


image.png

同一目录下运行多个py文件

有时,同一目录下多个py文件需要一起打包,也只需要更改spec文件即可,依次添加你想运行的py文件即可
如下:


V10.png
V11.png

你可能感兴趣的:(pyinstaller 打包python程序成exe安装包)