原因
出现打包出来原因很大的话,是因为anaconda会把所有的包都放到了pyinstaller的hook里面,可以去anaconda里面的lib里面的sit-package,然后pyinstaller里面的所有的hook,里面有好多包,打包的时候啥都包括进去了,导致输出日志里也会import进这些包,那当然会很大
解决方法
- 卸载全局pyinstaller
- 安装局部环境(自行百度,我就不说了)
- 安装所有你需要的包,保证python运行的时候不出错
- 然后安装pyinstaller,这样子pyinstaller里面的包不多,所以打包出来的也不大
- 最后
pyinstaller -F -w test.py
- 若出现超出栈的错误,就在生成的test.spec中的第二行添加
import sys
sys.setrecursionlimit(1000000)
至此,解决200m+变为12m,开森~~