Hi,
If I may, I feel you are tying to address a few questions at the same time,
although they are related
1. Where to put the try/except block, inside or outside the function
2. How to deal with un-anticipated exceptions
3. How to keep record
My personal feelings are:
1. Kind of prefer try/except block outside the function though. This way it
looks clean and easy to follow. In terms of logging the url, since you pass it
to the function anyway, there should be ways to keep this option, even with the
block written outside the function.
2. From code development perspective, would suggest you follow Test Driven
Development (TDD) approach. Nobody can anticipate all of the possible outcomes,
but I'm sure you have a pretty good idea about the most likely scenarios, and
just make sure that your code is suitable for these scenarios. When future new
exceptions arise, you can always refactor your code as needed.
3. Feel it's a personal choice here as being pointed out earlier. No mater
which way you go, you just have to follow it up and deal with it, trace it back
to the root cause. I kind of prefer logging, so to keep a good record for
myself, and you can make it very informative.
Hope this helps.
All the best,
Tian
--
https://mail.python.org/mailman/listinfo/python-list