CrontabでPyAutoGui: MacOS

会議時間にアプリが自動で立ち上がりそのまま入室するには、前記事で作成したSeleniumとPyAutoGuitを使ったコードを、crontabかpythonのscheduleに組ませておくことで可能になる。
ただし、MacOSではPayAutoGuiをcrontabで使用するには、以下の作業が必要となる。

PATH設定

crontabの実行環境はターミナルとは別環境であるから、PayAutoGuiのscreencaptureのcrontabでの実行には、screencaptureのPATHを設定する必要がある。

 % which screencapture
/usr/sbin/screencapture

crontabのスクリプトに以下のように追加する。

% cat crontab.sh
PATH=/usr/sbin:/usr/bin:/bin:/usr/local/bin
SHELL=/bin/zsh

System Preferencesで、screencaptureのアクセスを許す

System Preference > Privacy & Security > Screen & System Audio Recoding
にて、python3, Terminalを許可アプリに加える。+をクリックした後、command+shift+Gでパスを記入した方が早い。

System Preferencesで、python, Terminal のAccessを許可する

System Preference > Privacy & Security > Accessibilityに上記と同様に、python3, Terminalを許可アプリに加える。

System Preferencesで、Terminal, cronにFull Disk Accessを許可する

System Preference > Privacy & Security > Full Disk Access に上記と同様に、cron, Terminalを許可アプリに加える。


いいなと思ったら応援しよう!