2017-09-14 1 views

Répondre

2

Cette chaîne a été codée en URL deux fois. Le %25 représente un caractère %. Le %20 résultant du décodage du %25 représente un espace.

urllib.parse.unquote (juste urllib.unquote en Python 2) décode le codage %, et vous voulez décoder deux fois:

t = "/home/user/Music/library/1-02%2520Maralito.mp3" 
from urllib.parse import unquote # Python 3 
from urllib import unquote   # Python 2 
print(unquote(unquote(t))) 
+0

Oh merci. C'est plutôt * urllib.parse.unquote (urllib.parse.unquote (uri)) * – latach

+0

Oui, vous avez raison, ils ont changé cela en Python 3. Je vous ai par inadvertance donné la réponse Python 2.x. Je vais mettre à jour. – kindall