Python标注工具labelImg使用Pyinstaller打包成EXE的过程及问题处理

直接上过程

1.在python项目中使用pip命令安装pyinstaller。

2.在python编辑器(如Pycharm)终端切换到要打包的.py文件所在目录。

3.使用pyinstaller工具命令打包.py文件,如:

pyinstaller labelImg.py --noconsole --workpath .\Pyinstaller\temp  --distpath .\Pyinstaller\dist 

4.到生成的文件夹Dist中找到初步生成的exe文件。

5.不出意外的话,会弹出“找不到指定模块”之类的错误,这时,打开.py文件所在目录下方的与.py文件同名、后缀为.spec的参数说明文档,

使用记事本打开后,在hiddenimports字段行增加报错的模块名。例如:

hiddenimports=['libs','json','xml','xml.etree'],

6.删除Dist文件夹后,使用  pyinstaller labelImg.spec,尝试重新打包。

7.再次运行生成的exe程序,应该就可以运行了。这样可以解决绝大多数找不到模块的报错问题。

8.运气不好的话,可能还会报错。。。

 根据上图中的提示,依次在项目目录定位到labelFile.py->pascal_voc_io.py文件,使用按住Ctrl+键盘左键点击的方式在pascal_voc_io脚本中定位到etree所在文件,根据

该文件找到上级文件夹xml,将其复制到dist\labelImg\_internal文件夹下,这样上图的“无法导入模块xml.etree”的报警就消除了。

9.依次处理其他类似错误报警,最终labelImg.exe就成功运行起来了。^_^

 

参考文章:【python第三方库】pyinstaller使用教程及spec资源文件介绍_pyinstaller --hidden-import-CSDN博客

 

posted @ 2024-06-21 18:51  尼古拉-卡什  阅读(144)  评论(0编辑  收藏  举报