J'utilise python pour jouer avec l'API stackoverflow. Je lance les commandes suivantes:Modifier le type d'octet python en chaîne
f = urllib.request.urlopen('http://api.stackoverflow.com/1.0/stats')
d = f.read()
Le type de d est la classe « octets » et si je l'imprimer, il ressemble à:
b'\x1f\x8b\x08\x00\x00\x00 .... etc
J'ai essayé d=f.read().decode('utf-8')
comme cela est le charset indiqué dans l'en-tête , mais je reçois un message d'erreur 'utf8' codec can't decode byte 0x8b in position 1"
Comment puis-je convertir l'objet byte que j'ai reçu de mon appel urllib.request en une chaîne?
vous l'avez. Je l'ai résolu avec ce qui suit: import zlib decompressed_data = zlib.decompress (f.read(), 16 + zlib.MAX_WBITS) – amccormack