Py之Pyinstaller:Python库之Pyinstaller简介、使用方法、安装详细攻略

举报
一个处女座的程序猿 发表于 2021/03/30 03:06:11 2021/03/30
【摘要】 Py之Pyinstaller:Python库之Pyinstaller简介、使用方法、安装详细攻略       目录 Pyinstaller简介 Pyinstaller安装 Pyinstaller使用方法 1、使用方法 2、参数含义       Pyinstaller简介         PyInstaller是一个十分有用的第三方库,它能够在Win...

Py之Pyinstaller:Python库之Pyinstaller简介、使用方法、安装详细攻略

 

 

 

目录

Pyinstaller简介

Pyinstaller安装

Pyinstaller使用方法

1、使用方法

2、参数含义  


 

 

Pyinstaller简介

        PyInstaller是一个十分有用的第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。
        PyInstaller是一个程序,冻结(包)的Python程序为独立的可执行文件,在Windows,Linux,Mac OS X,FreeBSD,Solaris和AIX。其主要优点是在类似的工具,PyInstaller的作品与Python 2.7和3.3-3.6,建立小的可执行文件由于透明压缩,它是完全跨平台的,使用的操作系统支持加载动态库,从而保证完全兼容。对pyinstaller的主要目的是与第三方软件兼容的盒子。这意味着,与PyInstaller,所有需要的技巧使外部包已经集成在pyinstaller本身也无需用户干预。你不需要寻找技巧在维基应用自定义修改你的文件或您的安装脚本。作为一个例子,图书馆像PyQt,Django或matplotlib的完全支持,而不必处理插件或外部数据文件手动。检查我们支持的包的兼容性列表以获得详细信息。欢迎加入我们的行列!请查看我们的路线图检查我们的计划。同时使用报告表示欢迎:让我们知道PyInstaller对你的作品有什么问题,或者你在使用它的发现。检查我们的项目使用pyinstaller列表。

 

Pyinstaller安装

pip install pyinstaller


 

Pyinstaller使用方法

1、使用方法

切记:跨平台或电脑,解压后的exe文件不能有中文路径,有中文路径会打不开exe文件
T1、打包为多个文件pyinstaller Search.py
T2、打包为单个文件pyinstaller -F Search.py,
          例如pyinstaller -F Eric20180524py_gui_Iot.py --icon=Jasonniu.ico


2、参数含义  

  • -F 表示生成单个可执行文件,-F指令,注意指令区分大小写。这里是大写。使用-F指令可以把应用打包成一个独立的exe文件,否则是一个带各种dll和依赖文件的文件夹
  • -w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧! -w指令,直接发布的exe应用带命令行调试窗口,在指令内加入-w命令可以屏蔽,例如pyinstaller -F -w Search.py
  • -p 表示你自己自定义需要加载的类路径,一般情况下用不到 ,-p指令,这个指令后面可以增加pyinstaller搜索模块的路径。因为应用打包涉及的模块很多。这里可以自己添加路径。不过经过笔者测试,site-packages目录下都是可以被识别的,不需要再手动添加。-p参数是添加的pyinstaller打包程序时的扫描路径,pyinstaller的扫描路径有可能不完整,造成打包后的可执行文件运行时出现“找不到指定的模块”的错误。 
  • -i 表示可执行文件的图标,例如:pyinstaller -F --icon=my.ico xxx.py。

或者pyinstaller -F -w -i F:\\File_Python\\Jasonniu.ico Search.py
       执行Pyinstaller命令后,在当前目录下生成两个文件夹build和dist,一个name.spec文件  在build文件夹下有一个warnname.txt文件,这里面会有关于缺少模块的日志  在dist/文件夹下有可执行文件name.exe
(1)、pyinstaller打包多个py文件和去除cmd黑框:pyinstaller.exe -F 路径\文件名.py空格路径\文件名.py空格--noconsole
pyinstaller name.py --noconsole
(2)、隐藏模块:pyinstaller -F CV_Object.py --icon=Jasonniu.ico --hidden-import=yolo,PyQt5.sip,h5py
(3)、打开生成的CV_Object.spec文件,直接拖入dos内即可(或pyinstaller "F:\Program Files\Python\Python36\Lib\site-packages\keras_*****\keras-*****\CV_Object.spec"),以后修改CV_Object.spec文件的参数即可!!


  
  1. # -*- mode: python -*-
  2. block_cipher = None
  3. a = Analysis(['CV_Object.py'],
  4. pathex=['F:\\Program Files\\Python\\Python36\\Lib\\site-packages\\keras_*****\\keras-*****'],
  5. binaries=[],
  6. datas=[],
  7. hiddenimports=['*****','model'],
  8. hookspath=[],
  9. runtime_hooks=[],
  10. excludes=[],
  11. win_no_prefer_redirects=False,
  12. win_private_assemblies=False,
  13. cipher=block_cipher)
  14. pyz = PYZ(a.pure, a.zipped_data,
  15. cipher=block_cipher)
  16. exe = EXE(pyz,
  17. a.scripts,
  18. a.binaries,
  19. a.zipfiles,
  20. a.datas,
  21. name='CV_Object',
  22. debug=False,
  23. strip=False,
  24. upx=True,
  25. runtime_tmpdir=None,
  26. console=True , icon='Jasonniu.ico')

大功告成!

 

 

 

 

文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。

原文链接:yunyaniu.blog.csdn.net/article/details/79754632

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。