Retrace
Retrace your steps and try again.
Retrace provides a configurable decorator which allows you to wrap Python callables and retry them on errors or other specific conditions.
Docs
It is simple and elegant.
See the documentation at:
http://d0ugal.github.io/retrace/
Quickstart
First, pip install retrace
.
import retrace
@retrace.retry
def unstable():
# ...
Boom. Done.
This function will now be retied up to 5 times if it raises an exception. You can customise how often it is retried, limit the exceptions and add validators to further verify the return value. Check out the docs for all this and more.