gpt4 book ai didi

python - setup.py 和 py2app 包括 pip 包

转载 作者:太空宇宙 更新时间:2023-11-03 20:03:37 27 4
gpt4 key购买 nike

我用 python 构建了一个键盘记录器,并使用 py2exe(版本 0.13)将 python 文件转换为 exe。它工作得很好,包括所有的包和一切。

我希望我的键盘记录器也能在 mac 上使用,所以我尝试使用 py2app。我关注了 TheBlackBerryChannels tutorial 。它很好地解释了所有内容,但没有显示如何安装从 pip 安装的外部包。因为我使用 from pynput.keyboard import Key, Listener
导入操作系统
导入日期时间
从路径库导入路径
来自 pip 的包。

在完整的 setup.py 文件中,这就是我所拥有的:

from setuptools import setup

APP = ['KeyLoggingMac.py']
OPTIONS = {
# 'iconfile':'logoapp.icns',
'argv_emulation': True,
'packages': ['pynput']
}

setup(
app=APP,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)

我做错了什么?它不包含 pynput 包,我认为它会自动包含 os、datetime 和 pathLib 模块,但为什么它不包含 pynput

最佳答案

为了简单起见,在主文件中将其导入如下:

from pynput import keyboard

然后在您的设置文件中使用 OPTIONS 中的“includes”,请注意,我还添加了数据文件 test.txt 以将按键写入文件:

from setuptools import setup

APP = ['TEST.py']
DATA_FILES = ['test.txt']
OPTIONS = {'includes': ['pynput']}

setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)

然后从您的 venv 使用终端命令运行 py2app:

python setup.py py2app

您还可以使用 py2applet 生成 setup.py 文件,但我发现它永远无法正常工作。

py2applet --make-setup FILENAME.py

您还需要授予应用程序访问全局键盘事件的权限。这是在“首选项”>“安全和隐私”>“隐私”中完成的

在 Mojave 上,您需要“辅助功能”选项卡,然后在其中添加您的应用程序;在 Catalina 上,您需要“输入监控”。

这对我有用。

关于python - setup.py 和 py2app 包括 pip 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59092009/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com