Considérese la siguiente excepción Python:de manipulación específicas de Windows en una plataforma independiente manera
[...]
f.extractall()
File "C:\Python26\lib\zipfile.py", line 935, in extractall
self.extract(zipinfo, path, pwd)
File "C:\Python26\lib\zipfile.py", line 923, in extract
return self._extract_member(member, path, pwd)
File "C:\Python26\lib\zipfile.py", line 957, in _extract_member
os.makedirs(upperdirs)
File "C:\Python26\lib\os.py", line 157, in makedirs
mkdir(name, mode)
WindowsError: [Error 267] The directory name is invalid: 'C:\\HOME\\as\
\pypm-infinitude\\scratch\\b\\slut-0.9.0.zip.work\\slut-0.9\\aux'
quiero manejar este particular excepción - es decir, WindowsError con número de error 267. Sin embargo, no se puede simplemente hacer lo siguiente :
try:
do()
except WindowsError, e:
...
Debido a que no iba a funcionar en los sistemas Unix, donde WindowsError ni siquiera está definido en el módulo de excepciones.
¿Existe una manera elegante de manejar este error?
cf. http://bugs.python.org/issue6609 –