Currently, we have some places in the code where we wikipedia.output("%s" % e) with e and exception. This breaks if the exception (whose information is of type str) is printed through .output (which requires unicode).
See my comments on this issue below; is there a reason to print errors through .output instead of using the built-in python functions?
---------- Forwarded message ---------- Subject: [Pywikipedia-bugs] [ pywikipediabot-Patches-3092870 ] non ascii in system messages and max retry
https://sourceforge.net/tracker/?func=detail&atid=603140&aid=3092870...
Comment By: Merlijn S. van Deen (valhallasw)
Date: 2012-03-21 09:49
Message: I think we should either a) skip the entire output() machinery and use traceback.print_exc() instead or b) write a wrapper for that does what you propose here (but which can also be used for traceback.format_exc).
and replace all exception printing with one of those two options.
----------------------------------------------------------------------