11.4 httplib --- Client pour le protocole HTTP

Ce module définit une classe qui implémente le côté client du protocole HTTP. Normalement il n'est pas utilisé directement - le module urllib s'en sert pour gérer les URLs qui utilisent HTTP.

Le module définit une classe, HTTP:

HTTP([host[, port]])
Un instance de HTTP représente une transaction avec un serveur HTTP. Quand on l'instancie, il faut lui passer un hôte et un numéro de port optionnel. Si on ne passe pas de numéro de port, le port est extrait de la chaîne hôte si elle a la forme hote:port, sinon on prend le port HTTP par défaut (80). Si on ne passe pas d'hôte, aucune connexion n'est établie, et il faut utiliser la méthode connect() pour se connecter à un serveur. Par exemple, les appels suivants créent tous des instances qui se connectent au serveur aux mêmes hôte et port:

>>> h1 = httplib.HTTP('www.cwi.nl')
>>> h2 = httplib.HTTP('www.cwi.nl:80')
>>> h3 = httplib.HTTP('www.cwi.nl', 80)

Une fois qu'une instance de HTTP a été connectée à un serveur HTTP, on s'en sert de la façon suivante:

1.
Effectuer exactement un appel à la méthode putrequest().

2.
Effectuer zéro ou plus d'appels à la méthode putheader().

3.
Appeler la méthode endheaders() (on peut s'en passer si l'étape 4 n'effectue pas d'appel)

4.
Effectuer éventuellement des appels à la méthode send().

5.
Appeler la méthode getreply().

6.
Appeler la méthode getfile() et lire les données depuis l'objet fichier qu'elle retourne.


Sous-sections
  1. Objets HTTP
  2. Exemples