salut,
j'ai un petit souci pour encoder une URL avec urllibCode:
1
2
3
4
5
6
7 #!/usr/bin/python3 #-*- coding = utf-8 -*- import urllib.parse l = 'ê' print(urllib.parse.quote(l)
alors que Chrome web dev tools montreCode:%C3%AA
:koi:Code:%EA
Version imprimable
salut,
j'ai un petit souci pour encoder une URL avec urllibCode:
1
2
3
4
5
6
7 #!/usr/bin/python3 #-*- coding = utf-8 -*- import urllib.parse l = 'ê' print(urllib.parse.quote(l)
alors que Chrome web dev tools montreCode:%C3%AA
:koi:Code:%EA
Salut,
urllib.parse "quote" les strings d'après les spécifications des RFC 2396 et 3986: ê se codant b'\xc3\xaa' en utf-8 qui devient %C3%AA me semble correct.
- W
d'accord. c'est un problème d'encodage de caractères.
ça te semble la bonne façon de faire ?Code:
1
2
3
4
5
6 import sys import urllib.parse l = 'ê' l= l.encode('iso-8859-1') print(urllib.parse.quote(l))
Code:%EA
bonjour
pas compris ce que tu désires puisque l'on te dit que cet encodage est bon ...
par exemple les 2 sont bien les mêmes (curl, navigateurs, ...)
ps: si tu désires forcer ton encodage (et non le standard) , c'est urllib.parse.quote(url, encoding='iso-8859-1')Code:
1
2
3
4
5
6https://fr.wikipedia.org/wiki/Wikip%C3%A9dia https://fr.wikipedia.org/wiki/Wikipédia https://fr.wiktionary.org/wiki/%C3%AA https://fr.wiktionary.org/wiki/ê https://fr.wiktionary.org/wiki/%EA !! 404 !! Avec ton encodage maison
j'ai un "truc"/caractère qui est bon dans un contexte/encodage, mais j'ai besoin de l'utiliser dans un autre contexte/encodage.
c'est noté.Code:urllib.parse.quote(url, encoding='iso-8859-1')
merci. :ccool: