Python 3 support

Changed to python library to work both on Python 2 and Python 3 using the six library.
this and the similar block below don't need to capture the exception