Python 使用PyInstaller打包发布
打包发布
1.安装插件PyInstaller
pip install PyInstaller
2.在目录根目录内新增main.spec文件(打包脚本)
1 # -*- mode: python ; coding: utf-8 -*-
2
3 block_cipher = None
4
5 py_files = ['main.py',
6 'XXX\\XX.py',
7 'YYYY\\YYYYYY.py'
8 ]
9 add_files = [
10 ('chromedriver.exe','.'), # .表示将资源文件复制到打包文件的根目录
11 ('AppSettings.ini','.'),
12 ('doc\\*.txt','doc'),
13 ('images\\my.png','images'),
14 ]
15 a = Analysis(py_files, #所有脚本文件路径
16 pathex=['E:\\XX\\XX'], #项目根目录
17 binaries=[],
18 datas=add_files , #打包资源文件(图片、文档、视频等)
19 hiddenimports=[],
20 hookspath=[],
21 runtime_hooks=[],
22 excludes=[],
23 win_no_prefer_redirects=False,
24 win_private_assemblies=False,
25 cipher=block_cipher,
26 noarchive=False)
27 pyz = PYZ(a.pure, a.zipped_data,
28 cipher=block_cipher)
29 exe = EXE(pyz,
30 a.scripts,
31 [],
32 exclude_binaries=True,
33 name='test', #打包后exe名称
34 debug=False,
35 bootloader_ignore_signals=False,
36 strip=False,
37 upx=True,
38 console=True ) #是否显示命令窗口,默认true
39 coll = COLLECT(exe,
40 a.binaries,
41 a.zipfiles,
42 a.datas,
43 strip=False,
44 upx=True,
45 upx_exclude=[],
46 name='test') #打包后文件夹名称
3.执行打包命令
pyinstaller -F main.spec
4.完成后会在项目内出现build及dist文件夹,打包文件在dist文件夹内
PS:
也可以不写spec,直接执行-F命令强制打包。但是需要打包的项目如果有资源文件及多个脚本文件依赖时,会出现打包丢失文件。所以建议按照标准打包。
直接打包exe命令(main为入口py):
pyinstaller -F main.py
参考:https://www.cnblogs.com/the3times/p/12386007.html
作者:Mr.Jimmy
出处:https://www.cnblogs.com/JHelius
联系:yanyangzhihuo@foxmail.com
如有疑问欢迎讨论,转载请注明出处