Mac automator to rerun a python script if first attempt failed
It really depends - is there any "pause" or do you want to continually keep sending emails? This sounds a bit SPAM-y?

If you have created a 'process' that does some checks and then if there is work to be performed - it does its work and when finished goes back to "sleep".  This sounds more like a daemon task loop.

You can leverage launchctl.  It will keep a daemon/process running indefinitely. I'd suggest you install your script in your user space not the system.  The only difference is it will not start up until you log into your Mac.