web-dev-qa-db-fra.com

Quelle est la différence entre 'contenu' et 'texte'

J'utilise la formidable bibliothèque Python Requests . Je remarque que le documentation fine contient de nombreux exemples de comment faire quelque chose sans expliquer le pourquoi. Par exemple, les deux r.text et r.content sont montrés à titre d'exemples de comment pour obtenir la réponse du serveur. Mais où est-il expliqué ce que font ces propriétés? Par exemple, quand devrais-je choisir l'une plutôt que l'autre? Je vois que r.text renvoie un objet unicode parfois, et je suppose qu’il y aurait une différence pour une réponse non textuelle. Mais où tout cela est-il documenté? Notez que le document lié indique:

Vous pouvez également accéder au corps de la réponse sous forme d'octets, pour les requêtes non textuelles:

Mais ensuite, il montre un exemple de réponse textuelle! Je ne peux que supposer que la citation ci-dessus signifie: non-text responses au lieu de non-text requests, car une requête non textuelle n’a pas de sens en HTTP.

En bref, où se trouve le documentation de la bibliothèque, par opposition au (excellent) tutoriel sur le Python Demandes site?

92
dotancohen

Le interface de développeur a plus de détails:

r.text est le contenu de la réponse en Unicode, et r.content est le contenu de la réponse en octets.

112
Gary Kerr

Il apparaît clairement dans la documentation que r.content

You can also access the response body as bytes, for non-text requests:

 >>> r.content

Si vous lisez plus bas sur la page, il s’agit par exemple d’un fichier image.

10
PyNEwbie