pyinstaller库打包python的方法


pyinstaller库打包python的方法

刚好之前写过该文章 , 希望对你有所帮助 。
在之前文章《让你的代码更好的交付 , 使用Python实现模块打包发布》中,分享了测试开发工程师在进行交付时,对交付模块使用Wheel库将其打包成.whl文件 , 已达到提高交付、部署效率的目的 。同时,采用统一的发布方式,也有助于提高测试开发的规范性 。

PyInstaller安装
建议使用pip的方式进行安装,否则可能会报缺失其他依赖库的情况 , 需要逐个手动安装 。
pip install PyInstaller

PyInstaller使用
如下简单代码示例,其中导入了Python内置库——time模块和第三方库——csv模块 , 实现了每次运行时,在新生成的csv文件中写入固定数据 。
pyinstaller库打包python的方法

pyinstaller库打包python的方法

在该模块目录内执行如下命令,执行日志如下:
pyinstaller WriteFiles.py

pyinstaller库打包python的方法

其中在当前目录中可以看到生成了.uildWriteFilesWriteFiles.exe文件
pyinstaller库打包python的方法

我们执行WriteFiles.exe,可以发现在当前目录下,新增了WriteFile_1550935956.csv文件 。
pyinstaller库打包python的方法


扩展:PyInstaller常用参数说明
  • -F:打包单个文件,生成结果是一个.exe格式文件 。
  • -D:打包多个文件 , 生成结果是一个目录,包含第三方依赖、资源、.exe文件等,适合以框架形式编写工具模块 , 默认参数 。
  • -c:使用Windows控制台子系统执行,显示命令行窗口,默认参数 。
  • -w:使用Windows子系统执行,当程序启动的时候不会打开命令行,编写GUI程序时使用此参数有用 。
  • -p:指定额外的import路径,类似于使用PYTHONPATH,多个目录可以用路径分割符(Windows使用分号,Linux使用冒号) 。
  • –add-data:打包额外资源 , 多个资源可以使用路径分割符(Windows使用分号,Linux使用冒号) 。
  • –add-binary:打包额外的代码,多个代码可以使用路径分割符(Windows使用分号,Linux使用冒号) 。同时–add-binary添加文件的引用文件会一并添加进来 。
  • -i :添加.exe文件的icon图标 。
  • -n:编辑.exe文件和.spec的文件名 。
我们尝试使用其中 -F,-n 参数 , 只生成一个文件名为Toutiao的.exe格式文件 。我们执行如下命令 , 运行日志如下:
pyinstaller -F -n Toutiao.exe WriteFiles.py

pyinstaller库打包python的方法

其中在当前目录中生成了.distToutiao.exe文件 ,目录结构如下 。
pyinstaller库打包python的方法

除了PyInstaller模块能够将模块打包成.exe格式的可执行程序 , 还可以了解下pyexe模块 , 它也可以实现相同效果的打包,这里就不做单独的介绍了 。
【pyinstaller库打包python的方法】
若对你有所帮助,欢迎大家评论、留言 。

经验总结扩展阅读