Dé-zo-lé !
On dirait que tout le monde s'est donné le mot pour poser des problèmes liés à l'encodage des caractères !
J'en rajoute une couche...
Mon problème est d'afficher une url (avec des caractères compliqués) sur la console.
Après avoir parcouru tous les posts déjà présents, j'ai trouvé une astuce qui marche plutôt bien :Ça marche impec : j'ai bien "www.éhè.com" qui s'affiche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 import urllib url = 'www.%C3%A9h%C3%A8.com' print unicode( urllib.unquote_plus( url ),'UTF8')
Mais voilà, avec des caractère vraiment spéciaux, ça ne marche plus :--> UnicodeEncodeError: 'charmap' codec can't encode character u'\u032a' in position 2: character maps to <undefined>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 import urllib url = '__%cc%aa__' print unicode( urllib.unquote_plus( url ),'UTF8','ignore' )
Ce code ccaa qui correspond à \u032A (COMBINING BRIDGE BELOW) fait tout planter, même en ajoutant 'ignore' en paramètre à unicode .
Que faire... je comprends bien que tous les caractères du monde ne puissent pas s'afficher sur une console, mais comment dire à Python de les ignorer si 'ignore' ne marche pas ?
Partager