将Python脚本打包成MACOSAPP程序过程
安装py2app
打开终端输入pip3命令安装py2app工具
pip3 install py2pp
安装完成后,默认会装到/library/frameworks/python.framework/versions/3.8/bin/py2applet
目录下,3.8为python3的版本号,可以自己输入以下命令检查对应的版本号
为了方便我们使用,我们可以将这个py2app的工具拷贝到/usr/local/bin
目录下,在osx系统下终端可以直接使用工具名,否则在使用py2app时候就需要输入工具的完整路径了,可以直接在终端输入下面命令
cp /library/frameworks/python.framework/versions/3.8/bin/py2applet /usr/local/bin/py2applet
创建setup.py文件
我们将我们所要打包成app的脚本和资源统一放到同一文件夹下, cd到此目录下,然后终端输入命令:
py2applet --make-setup verify.py
此时可以看到已经有setup.py
文件生成到此目录下了
配置setup.py
setup.py内有一些app信息的配置
我们也可以将自己的options加进去
如下为配置的参考,以下有几个参数需要注意:
app
: 放置要执行py的列表data_files: 存放所有要用到的文件资源,比如我放置了py_utils/
这个是工具包文件夹,又放置了app所要显示的图片文件options:可选参数- iconfile
:app的图标,必须为icns的格式,其他格式的话是不会显示出来的- argv_emulation
:查询了很多也没有查到具体是做什么用的,经实测发现设为false时打开app执行,则应用图标会在dock内不动,为true时会一直跳动,直到程序执行完成会从dock直接消失- plist
:其他的app应用配置,熟悉macos应用开发的都会非常熟悉这些参数,mac应用info.plist里的参数都可以添加进去
""" this is a setup.py script generated by py2applet usage: python setup.py py2app """ from setuptools import setup app = ['verify.py'] data_files = ["py_utils/", "earth.icns"] options = { "iconfile":"earth.icns", "argv_emulation": true, "plist": { "cfbundlename" : "verify", # 应用名 "cfbundledisplayname": "verify", # 应用显示名 "cfbundleversion": "1.0.0", # 应用版本号 "cfbundleidentifier" : "verify", # 应用包名、唯一标识 "nshumanreadablecopyright": "copyright © 2021 sw felix.zhao. all rights reserved." # 可读版权 } } setup( app=app, data_files=data_files, options={'py2app': options}, setup_requires=['py2app'], )
生成app
还在此前的目录终端下输入命令
则app将生成到目录下
rm -rf build dist # 删除之前的dist目录 python3 setup.py py2app # 生成app
然后双击执行即可
以上就是将python脚本打包成macosapp程序过程的详细内容,更多关于python脚本打包成macosapp程序的资料请关注其它相关文章!
上一篇: Nginx的正则表达式详解
下一篇: 就任由她去了