1.安装pyinstaller
pip install pyinstaller
安装遇到问题点我,安装完成之后,就可以进入下一步。如果遇到网络连接问题,关掉VPN试试。
2.先进入脚本所在文件夹(cd +文件目录)
> cd D:\OneDrive\Python\notes
或者进入到文件所在位置,右键-打开命令提示符(我这个是Bandzip设置里添加的,更方便点,也可以地址栏输入cmd)。
3.执行命令:pyinstaller -F .py(表示文件名)
#正常打包
pyinstaller -F mycode.py
#不带控制台(黑框)的打包
pyinstaller -F -w mycode.py
pyinstaller -F mycode.py --noconsole
#带图标打包,图标和py文件放一起
Pyinstaller -F -w -i tubiao.ico mycode.py
执行完后你就会在同文件夹下看到新生成的三个东西:
- spec文件:此文件无用,可以删除;
- dist文件夹:此文件夹下有你想要的.exe文件,可以直接在命令框执行;
- build文件夹:此文件夹无用,可以删除;
上述执行命令中的参数“-F”是指制作独立可执行程序,如果不加这个参数,pyinstaller会把所有依赖文件抽取出来,放在dist文件夹内,这样你每次要执行exe时都要带着这一堆文件,所以,如果不是特别需要看它的依赖包的话,最好还是只生成一个独立可执行程序,比较方便。
注意:文件名不能有空格,否则无法打包!提示入下图,从图中可以看出,空格后的1.0没有被识别。
更多参数
以上三个是比较常用的参数,其他参数详见下表:
黑框问题
当我们运行刚才dist文件夹内的exe文件时,会出现控制台窗口(俗称黑窗口)。如图:(请自行忽略下面丑陋的界面~~)
控制台窗口是给开发人员用的,这是为了运行时开发人员能在控制台看到错误信息,因此,如果已经确认开发完成程序,则可以不再让这个黑乎乎的窗口出现。
打包的时候:如果没有指定路径,直接指定python文件进行pyinstaller打包的话,需要进入打包文件的目录下执行下面命令,否则还得加上文件路径才能打包。(我们用的就是先进入目录再打包。)
4、文件太大?用虚拟环境打包
可以看这篇文章:https://mp.weixin.qq.com/s/xD7RwfyXOg6V6AF9h8mPhg
拓展连接:
Pyinstaller 使用详解 :https://zhuanlan.zhihu.com/p/71081512
win10 定时任务自动运行python程序:https://www.jianshu.com/p/43676346b0be