将Python脚本打包成MACOSAPP程序过程
作者:Felix-Zhao 发布时间:2022-03-07 14:20:43
安装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程序的资料请关注脚本之家其它相关文章!
来源:https://blog.csdn.net/m0_48732747/article/details/120084301
猜你喜欢
- str.join即sequence – 要连接的元素序列。返回通过指定字符连接序列中元素后生成的新字符串。n =
- 变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存
- 然后我们在Interactive Python prompt中测试了一下:>>> import subprocess &n
- 本文实例讲述了JavaScript实现的鼠标跟随特效。分享给大家供大家参考,具体如下:鼠标是现在电脑的基本配置之一,也是最常用的输入命令的工
- 几个利用背景结合a:hover做的小东东,希望对大家有所帮助。<!DOCTYPE html PUBLIC "-//W3C//
- Oracle DECODE函数功能很强,下面就为您详细介绍Oracle DECODE函数的用法,希望可以让您对Oracle DECODE函数
- 远程连接oracle只用PLSQLDeveloper客户端,不配置tnsnames.ora文件在PL/SQL中填写:1.UserName:用
- 前言前面写过一篇用Python制作PPT的博客,感兴趣的可以参考用Python制作PPT这篇是关于用Python进行数据可视化的,准备作为一
- 前言在Django应用程序中发送电子邮件最常见的用例是密码重置、帐户激活和发送与您的应用程序相关的一般通知。下面来看看详细的介绍吧。配置Dj
- tkinter是python的标准Tk GUI工具包的接口,在windows下如果你安装的python3,那在安装python的时候,就已经
- 前言最近写论文需要观察中间特征层的特征图,使用的是yolov5的代码仓库,但是苦于找不到很好的轮子,于是参考了很多,只找了这个,但是我觉得作
- 目录1、切片的基础用法2、切片的高级用法3、自定义对象实现切片功能3.1、魔术方法:`getitem()`3.2、自定义序列实现切片功能3.
- 简易画图工具(Python),供大家参考,具体内容如下小黑最近在努力的入门python,正好学习到了Python的tkinker模块下的Ca
- python pandas分组聚合1、环境python3.9win10 64bitpandas==1.2.1groupby方法是pandas
- 效果如下:(动态效果可复制代码查看,案例中的图片可自行选择添加)代码如下:<!DOCTYPE html><html lan
- 1. 开始前本程序基于tkinter生成GUI,使用前请确保已经安装好tkinter对于windows用户,您可能已经安装了tkinter,
- 前言今天呢,笔者想和大家来聊聊python+pytest接口自动化测试的参数关联,笔者这边就不多说废话了,咱们直接进入正题。一、什么是参数关
- 下面就是简单的例子,这里提供2中方法:test.htm &
- W3C终于发布了第一个HTML5草案,大家还沉溺在HTML2XHTML转换的快乐和痛苦中时,却又突然发现,HTML5和XHTML2,到底谁是
- 先来看看效果: Html源码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tr