每次 mac 从睡眠中唤醒时运行 python 脚本

时间:2021-06-22 20:20:22

标签: python

我有一个 python 文件,我想在每次 Mac 退出睡眠时运行它。 我已将 .py 文件转换为 dmg 文件并放入 mac 的登录项目部分,这是在设置 -> 用户 -> 登录项目中。 我的问题是,当我完全注销 Mac 时,这似乎只运行 DMG 文件。我总是点击 Mac 上的睡眠选项。有没有办法在每次计算机从睡眠中醒来时运行 python 脚本? enter image description here

1 个答案:

答案 0 :(得分:2)

@kitchen800 你可以尝试制作一个运行你的 python 程序的 shell 脚本,或者像另一个建议一样,使用 pyinstaller/py2app 把它变成一个可执行的应用程序。将 python 程序本身放在登录时打开只会打开 python 脚本,而不是运行它。

方法一:制作shell脚本

  1. 创建一个名为 runpyscript.sh 的文件(文件名无关紧要,但保留 .sh)
  2. 使用文本编辑器/IDE 打开文件并写入
python3 path/to/file.py
  1. 保存文件并导航到您的终端
  2. 运行命令 chmod +x path/to/runpyscript.sh
  3. 您还可以通过双击去掉文件末尾的 .sh 以使其可执行
  4. 将此 shell 脚本添加到“登录时打开”。
    现在,当您登录时,它应该(希望能工作)在终端中打开这个 shell 脚本并运行您的 python 程序。

方法二:使用pyinstaller制作应用

  1. 导航到终端
  2. 输入:pip install pyinstaller(如果你还没有安装 pyinstaller)
  3. 现在输入:pyinstaller path/to/file --onefile <other options go here>
    有关选项的更多信息,您可以访问此链接:https://pyinstaller.readthedocs.io/en/stable/usage.html
  4. 现在,您应该有一个 .app 文件。导航到您的查找器,按 CMD+SHIFT+H,然后转到名为 dist 的文件夹。在那里,您应该找到一个 file_name_here.app,然后您可以在登录时将其放入 Open。​​

方法三:用py2app制作应用

  1. 导航到终端
  2. 在命令提示符下,输入 pip install py2app
  3. 接下来,写 cd path/to/file
  4. 现在,您可以为您的 Python 应用程序生成一个 setup.py 文件。在命令提示符中,输入 py2applet --make-setup file_name_here.py
  5. 完成后,您可以执行 python3 setup.py py2app -A 以别名模式构建应用程序。在同一目录中,转到 Finder 中名为 dist 的文件夹并打开它。您应该在其中找到一个 .app 文件。如果打开 .app 文件时出现任何问题,请配置 setup.py 并再次运行 rm -rf build dist 和上面的 setup.py 命令,直到它起作用为止。
  6. 然后,返回终端并编写 python3 setup.py py2app 以构建应用的最终版本。
  7. 完成后,将其置于登录时打开。