Bonsoir,
voici une adresse url,
http://fr.wikipedia.org/wiki/Poche_(v%C3%AAtement)
Comment puis-je la décoder ? Python propose t'il une méthode pour cela?
Le résultat ici est:
http://fr.wikipedia.org/wiki/Poche_(vêtement)
Bonsoir,
voici une adresse url,
http://fr.wikipedia.org/wiki/Poche_(v%C3%AAtement)
Comment puis-je la décoder ? Python propose t'il une méthode pour cela?
Le résultat ici est:
http://fr.wikipedia.org/wiki/Poche_(vêtement)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 >>> import urllib >>> print urllib.unquote("http://fr.wikipedia.org/wiki/Poche_(v%C3%AAtement)") http://fr.wikipedia.org/wiki/Poche_(vêtement) >>> print urllib.unquote("http://fr.wikipedia.org/wiki/Poche_(v%C3%AAtement)").decode('UTF8') http://fr.wikipedia.org/wiki/Poche_(vêtement)
Bonjour,
Ceci correspond exactement à ce que je cherchais.
Merci donc à dividee
Bonjour,
peut-on faire l'inverse à savoir passer de fr.wikipedia.org/wiki/Poche_(vêtement) à fr.wikipedia.org/wiki/Poche_(v%C3%AAtement) ?
Bien sûr, mais il faut faire attention au codec utilisé par la chaîne d'origine. Je ne suis pas spécialiste, mais pour le web je pense qu'il vaut mieux convertir la chaîne en UTF8 avant de l'encoder:
Si la chaîne d'origine n'est pas une chaîne unicode, il faut d'abord la décoder avec le bon codec. Si elle est déjà en UTF8, bien entendu, on peut se passer de l'encodage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 >>> import urllib s = u"fr.wikipedia.org/wiki/Poche_(vêtement)" >>> urllib.quote(s.encode('UTF8')) 'fr.wikipedia.org/wiki/Poche_%28v%C3%AAtement%29' >>> urllib.quote(s.encode('UTF8'),'()') 'fr.wikipedia.org%2Fwiki%2FPoche_(v%C3%AAtement)'
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager