Pyinstaller利用规范文件打包的使用模板

   pyinstaller打包   

使用pyqt5开发软件,当项目越来越大,引用的资源越来越多时,那么使用pyinstaller进行打包,如果不利用规范文件,是很难满足打包需求的。

  

规范文件,其实你在使用,   打包时,也是会自动生成的,叫main.spec。

  

不过,如果你想把自己的资源文件一起打进包去,则需要对规范文件进行一些编辑,然后使用   即可打包完成。

  

本文主要就是列举下pyinstaller利用规范文件进行打包的几个使用模板,以供大家参考使用。至于内涵原理,本人时间有限,也没深入研究,大家根据自己情况去探索吧。

  

【如下代码,完全复制,直接运行,即可使用】【注1:模板中的相关路径和文件名称,当然需要根据自己的情况对应修改了】【注2:如果你的规范文件叫main.spec的话,打包命令便是,   】【注3:当项目越来越大时,免安装绿色文件夹在软件启动速度上,比单个可执行文件,要快! * *】

  模式一:使用规范文件,打成【单个可执行文件】   <前>   <代码> # - * -模式:python - *   
  
block_cipher=没有   ([=分析   ),   
,,,,,,pathex=[   ),   
,,,,,,二进制文件=[],   
,,,,,,数据=[],   
,,,,,,hiddenimports=[],   
,,,,,,hookspath=[],   
,,,,,,runtime_hooks=[],   
,,,,,,不包括=[],   
,,,,,,win_no_prefer_redirects=False,   
,,,,,,win_private_assemblies=False,   
,,,,,,密码=block_cipher,   
,,,,,,noarchive=False)   
     
# # # # # # # ! ! !注意点   :加载自己的资源文件# # # # # # # # # # # # # # # # # # # # #   
def extra_datas (mydir):   
,,def rec_glob (p,文件):   
,,,,   操作系统   
,,,,   一团   
,,,,   d glob.glob (p):   
,,,,,,   os.path.isfile (d):   
,,,,,,,文件。   (d)   
,,,,,,rec_glob (   % d文件)   
,,文件=[]   
,,rec_glob (   % mydir,文件)   
,,extra_datas=[]   
,,   f文件:   
,,,extra_datas。   ((f, f,   ))   
  
,,   extra_datas   
  
#   的   dir   
。数据+=extra_datas (   ),,# # #这里是自己的资源文件夹   
。数据+=extra_datas (   ),# # #这里是自己的资源文件夹   
。数据+=extra_datas (   )# # #这里是自己的资源文件夹   
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #   
  
pyz=pyz (a。纯、a.zipped_data   
,,,,,,密码=block_cipher)   
  
  
exe=exe (pyz,   
,,,,a.scripts,   
,,,,一个。二进制文件,,,,,,,,,,,,,,# # # ! ! !注意点      
,,,,一个。zipfiles,,,,,,,,,,,,,,# # # ! ! !注意点      
,,,,一个。资料,,,,,,,,,,,,,,,# # # ! ! !注意点      
,,,,[],   
,,,,exclude_binaries=False,大敌;# # # ! ! !注意点   :这里是错误的   
,,,,,name=,   
,,,,debug=False,   
,,,,bootloader_ignore_signals=False,   
,,,,,脱衣舞=False,   
,,,,upx=True,   
,,,,=False,控制台,   
,,,,,图标=)   
  模式二:使用规范文件,打成【免安装绿色文件夹】   <前>   <代码> # - * -模式:python - *   
  
block_cipher=没有   ([=分析   ),   
,,,,,,pathex=[   ),   
,,,,,,二进制文件=[],   
,,,,,,数据=[],   
,,,,,,hiddenimports=[],   
,,,,,,hookspath=[],   
,,,,,,runtime_hooks=[],   
,,,,,,不包括=[],   
,,,,,,win_no_prefer_redirects=False,   
,,,,,,win_private_assemblies=False,   
,,,,,,密码=block_cipher,   
,,,,,,noarchive=False)   
     
# # # # # # # ! ! !注意点   :加载自己的资源文件# # # # # # # # # # # # # # # # # # # # #   
def extra_datas (mydir):   
,,def rec_glob (p,文件):   
,,,,   操作系统   
,,,,   一团   
,,,,   d glob.glob (p):   
,,,,,,   os.path.isfile (d):   
,,,,,,,文件。   (d)   
,,,,,,rec_glob (   % d文件)   
,,文件=[]   
,,rec_glob (   % mydir,文件)   
,,extra_datas=[]   
,,   f文件:   
,,,extra_datas。   ((f, f,   ))   
  
,,   extra_datas   

Pyinstaller利用规范文件打包的使用模板