There are exceptions that don't derive from Exception: notably SystemExit and KeyboardInterrupt.  That's why there's both Exception and BaseException.  In fact, the reason people say not to use "except:" is specifically so that you don't catch those two.  In this case, I think I need to catch all exceptions, though I could be wrong.