Python ne peuvent pas ouvrir les fichiers avec des caractères non-anglais en chemin

J'ai un fichier avec le chemin d'accès suivant : D:/bar/クレイジー-ヒッツ!/foo.abc

Je suis de l'analyse du chemin à partir d'un fichier XML et de le stocker dans une variable appelée path dans la forme de file://localhost/D:/bar/クレイジー・ヒッツ!/foo.abc
Ensuite, les opérations suivantes sont effectuées :

path=path.strip()
path=path[17:] #to remove the file://localhost/ part
path=urllib.url2pathname(path)
path=urllib.unquote(path)

L'erreur est :

IOError: [Errno 2] No such file or directory: 'D:\\bar\\\xe3\x82\xaf\xe3\x83\xac\xe3\x82\xa4\xe3\x82\xb8\xe3\x83\xbc\xe3\x83\xbb\xe3\x83\x92\xe3\x83\x83\xe3\x83\x84\xef\xbc\x81\\foo.abc'

Mise à jour 1 : j'utilise Python 2.7 sous Windows 7

Windows ne pas utiliser l'UTF-8.
Alors, comment dois-je gérer cela?
L'utilisation d'un codage différent.
Essayez d'utiliser unicode chemin de chaîne à la place: path = path.decode('utf8') avant que le reste de votre code.
essayé cela ne fonctionne toujours pas.

OriginalL'auteur bcosynot | 2011-05-12