I think I back the idea of having the second one be just `except:`, but swapping the `ZeroDivisionError` for its parent `ArithmeticError` along the lines you suggest @jmeyers314 .  I think it's better to raise an exception here that, should it have been caused by a valid `spec` we can't think of, can be added to the pass list later if necessary.

(Put another way: this last `except: pass` is almost certain to raise a different, probably non-informative error almost immediately the next time `spec()` is used.)